
#COMMENT

SECRET WORD #1 -- ABRADE (v) to wear away by friction; to erode.
                  (in AGT "Blurb")

SECRET WORD #2 -- CUPIDITY (n) greed.
                  (OPEN GRANDFATHER CLOCK)

SECRET WORD #3 -- EXACERBATE (v) to worsen; embitter.
                  (In ROOM [R651  Top of Barrow])

SECRET WORD #4 -- GENRE (n) formal category or style of art.
                  (In ROOM [Dead End -- really])

SECRET WORD #5 -- HARBINGER (n) forerunner.
                  (READ OLD DIARY)

SECRET WORD #6 -- MILLIEU (n) environment; means of expression.
                  (In ROOM [blocked passageway])

SECRET WORD #7 -- NECROMANCY (n) black magic; dealing with the dead.
                  (OPEN SPELUNKER MAGAZINE)

SECRET WORD #8 -- RESTIVE (adj) unmanageable; fretting under control.
                  (EXAMINE ROCK-CRYSTAL SCULPTURE)

SECRET WORD #9 -- SOPORIFIC (adj) sleep producer.
                  (In ROOM [little twisty maze])

SECRET WORD #10 -- TURPITUDE (n) depravity.
                   (In ROOM [treasure room])

#END_COMMENT


#COMMENT
Below is a list of the points awarded in the game:

15 Old Cave game treasures at 15 points each -- for a total of 225 points

large sparkling nugget of gold
several diamonds
bars of silver
precious jewelry
rare coins
pirate's treasure chest
golden eggs
jewel-encrusted trident
vase resting on a velvet pillow
emerald the size of a plover's egg
platinum pyramid
Persian rug
glistening pearl
rare spices
golden chain


22 New Humongous Cave game treasures at 15 points each -- a total of 330 points

ruby yacht of Omar Khayyam
string of ancient Indian turquoise beads
sapphire-encrusted sceptre
Chinese jade bracelet
gem-encrusted helmet
iridium crown
shiny ring (crafted of the finest mithril)
finely-carved crystalline sculpture
small casket full of rare black opals
scrimshaw spyglass
bag filled with pieces of eight
polished metal plate
floppy disk
gold key
jeweled cane
rare stamps
golden weathercock
beautiful rose
apple
silver cross
Jeweled Urn
gold watch

Cave game action points -- for a total of 445 points

  10 points  -- Print AGT order form
   1 point   -- magazine dropped at Witt's End
  10 points  -- oil rusty door
   5 points  -- first watering of plant
   4 points  -- second watering of plant
  10 points  -- frighten troll with bear
  10 points  -- kill snake
  10 points  -- attack dragon
  10 points  -- feed bear
  15 points  -- retrieved eggs via magic
  10 points  -- Chopped down tree
  15 points  -- Visit Hell
  10 points  -- Kissed toad
  15 points  -- Open safe using combination
  40 points  -- make it to "Cave closing soon" announcement
  20 points  -- "Cave closed" announcement -- enter "master game"
  30 points  -- Found Treasure room by entering 2 foot slit
  10 points  -- Remove grate from air-conditioning duct
  10 points  -- Read disk
  10 points  -- Throw something into chasm, then ask for HELP
  15 points  -- Prayed in church while candle lit
  15 points  -- Get sceptre and "Zorton" hint
  15 points  -- Down into whirlpool after eating mushroom
  15 points  -- Say "Melenkurion" at Stone Face
  15 points  -- Get sword from rock
  15 points  -- Free Djinn from flask
  15 points  -- Open clam with trident
  15 points  -- Attack ogre with sword
  15 points  -- Throw dragon's teeth at goblins
  15 points  -- Attach suction cups to floor
  10 points  -- Smell the beautiful rose
  10 points  -- Ring the church bells
  10 points  -- Digging hole to shaft room
  10 points  -- Read commandment list
====
 445 points

 225  {Old game treasures}
 330  {New game treasures}
====
1000 points in total

#END_COMMENT

#DEFINE [Total number of treasures] 37

FLAG [Got all the treasures]

VARIABLE [Number of treasures dropped]

#DEFINE [Is a treasure?] NOUNPointsGT 10

#DEFINE [Total Points] 1000

#OPTIONS /Labels[] /Messages""

#COMMENT  Turn off warnings -- this message is not directly referenced
#OPTIONS :-Warnings

#COMMENT Macros for special "rooms"
#DEFINE [Nowhere]    0
#DEFINE [Carried]    1
#DEFINE [Worn]    1000

#COMMENT Macros for the directions used with ChangePassageway
#DEFINE [North]      1
#DEFINE [South]      2
#DEFINE [East]       3
#DEFINE [West]       4
#DEFINE [NorthEast]  5
#DEFINE [NorthWest]  6
#DEFINE [SouthEast]  7
#DEFINE [SouthWest]  8
#DEFINE [Up]         9
#DEFINE [Down]      10
#DEFINE [Enter]     11
#DEFINE [Exit]      12

#COMMENT Return "Warnings" to its previous state
#OPTIONS =Warnings

#COMMENT ---- Room FLAG noun numbers -- used to add things to NOUN MENU lists
#COMMENT      for various rooms -- i.e., WATER appears in multiple places

FLAG_NOUNS
[Water] Water
[Stream] Stream
[Building] Building
[Tree] Tree
[Chasm] Chasm
[Mist] Mist
[Road] Road
[Bridge] Bridge
[A Sign] Sign
[Bells] Bells
END_FLAG_NOUNS


TITLE
COLORS CYAN YELLOW BLACK YELLOW RED
ADVENTURE IN HUMONGOUS CAVE

Based on "public domain" games by Will Crowther,
Don Woods, David Platt and David Malmberg

This version adapted for the Adventure Game Toolkit and
(c) 1990 by David Malmberg

END_TITLE

INSTRUCTIONS

During your adventure in the cave, I will be your eyes and hands.  I know of
places, actions, and things.  Most of my vocabulary describes places and is
used to move you there.  To move, try words like FOREST, BUILDING, STREAMBED,
ENTER, EAST, NORTHWEST, NORTH, SOUTH, UP or DOWN.  I know about a few special
objects, like a black rod hidden in the cave.  These objects can be
manipulated using some of the various action words I know.  The objects may
have side effects; for instance, the rod scares the bird.  Usually adventurers
having trouble moving just need to try a few more words.  Usually people
trying unsuccessfully to manipulate an object are attempting something beyond
their (or my!) capabilities and should try a completely different tack.  To
speed the game you can sometimes move long distances with a single word.  For
example, "BUILDING" usually gets you to the building from anywhere above
ground except when lost in the forest.  Also, note that cave passages turn a
lot, and that leaving a room to the NORTH does not guarantee entering the next
from the SOUTH.

      Your commands should generally be in the format:

       <verb> <(multiple) noun phrase(s)> <preposition> <noun phrase/object>

      Some (hypothetical) examples of valid commands:

        PLACE A RED ROCK IN THE SMALL BOWL
         PUT THE GREEN ROCK AND THE SMALL PEBBLE BEHIND THE OAK TREE
         READ MY POETRY BOOK
         SWIM IN THE SWIMMING POOL
         EXAMINE THE GOLD RING, THE DWARF AND THE SILVER NECKLACE
         EAT THE CELERY, THE TUNA, THE APPLE AND THE ONION
         THROW THE BATTLE AXE AND THE LARGE ROCK AT THE WEREWOLF
         SHOOT THE BURGLAR WITH THE REVOLVER
         ATTACK HIM
           ("HIM" will refer to last noun mentioned, e.g., the burglar)
         FIRE THE LASER PISTOL AT THE ALIEN MUTANT
         GET THE BOOK (also: TAKE THE BOOK)
         READ IT
           ("IT" will refer to last noun mentioned, e.g., the book)
         GET ALL (will get everything movable at the current location)
         GET THE KEYS, BOTTLE, FOOD AND THE CLOAK
         EXAMINE THE KEYS, BOTTLE, FOOD AND CLOAK
         PUSH THE RED BUTTON AND THE GREEN BUTTON
         UNLOCK THE FILE CABINET WITH THE STEEL KEY
         JUMP THROUGH THE OPENING
         JUMP OVER THE LOG
         NORTH
         SOUTHWEST
         PLACE AN AXE AND THE SHIELD NEXT TO THE BIG TREE
         PUT THE FOOD ON THE KITCHEN TABLE
         TURN ON THE FLASHLIGHT
         LIGHT THE TORCH WITH THE WOODEN MATCHES
         SCREAM AT THE UGLY TROLL
         CLIMB UP THE LADDER
         EXTINGUISH THE FIRE (or PUT OUT THE FIRE)
         DRINK THE WHITE WINE
         THROW THE FIRE WOOD IN THE STOVE
         PULL THE BELL CORD
         WEAR THE STUPID HAT (also: PUT ON THE STUPID HAT)
         TAKE OFF THE HAT (also: REMOVE THE HAT)
         NE (for NORTHEAST)
         DROP THE KEY AND THE BOTTLE
         ENTER THE CAVE
         XYZZY (i.e., a "magic" word)
         TURN THE DOORKNOB
         PLAY WITH THE DOG
         TALK TO (or TALK WITH) THE OLD MAN (ABOUT THE WEATHER)
         TELL JEFF ABOUT THE SWORD
         ASK JODIE ABOUT THE CRIME

     Compound commands can be created by connecting single commands (like
      those above) with "AND", "THEN" or the punctuation symbols "," or ";" to
      connect two or more separate commands.  However, "end-of-sentence"
      punctuation symbols like ".", "!" and "?" should not be used.  Below are
      a few examples of valid compound commands:

        TURN THE DOORKNOB THEN ENTER THE CAVE
         CLIMB DOWN THE LADDER THEN SOUTH, WEST AND NORTHWEST
         GET THE CLOAK AND THEN EXAMINE IT; READ THE LABEL
         DROP THE FOOD AND THE BOTTLE THEN UNLOCK THE DOOR AND THEN LEAVE
         GET THE TORCH, LIGHT IT WITH THE WOODEN MATCHES THEN EXAMINE IT

     If the game understands all of the words in your command, but still
      seems confused by the command -- then try to say the same thing using
      fewer words and a simpler sentence.  When in doubt, simplify your
      input commands as much as possible.  This also saves typing effort.


SPECIAL COMMANDS:

     The game uses a number of special commands for various "housekeeping"
      chores.  These are all pretty standard for most adventure games,
      specifically:

        HELP         May (or may not) give you a hint.

        SCORE        Will summarize your progress, so far.

        INVENTORY    Will display a list of the items you are carrying, and
                       those items you are wearing.

        BRIEF        Will cause location descriptions to be brief.

        VERBOSE      Will cause location descriptions to be verbose.

        LOOK         Will give you a full (verbose) description of
                       your current location.

        LIST EXITS   Will list the obvious (visible) exits from your current
                       location.  There may be other ways to exit the location
                       -- but they may not be obvious.

        OOPS         Will allow you to edit (using the cursor keys, and the
                       delete, insert and backspace keys) your previous
                       input command.  For example, if you enter THORW ROPE by
                       mistake, OOPS will enable you to edit this command and
                       correct it to THROW ROPE.

        SAVE GAME    Will save the current game status on disk.

        RESTORE GAME Will restore a previously saved game from disk.

        SCRIPT       Causes output to go to both the screen and a printer
                       (using the LP1 port).

        UNSCRIPT     Causes output to go to the screen (only).

        SOUND ON/OFF SOUND OFF turns the sound off and SOUND ON turns it on.

        VIEW         Will allow you to view the various illustrations (if
                       any) available at any location.  For example, VIEW
                       SCENE will show a picture of the current location,
                       VIEW OGRE will show a picture to the ogre, etc.

        QUIT         Quits the current game session.  Always exit using QUIT
                       -- so the game can erase some temporary data files and
                       save disk space!


FUNCTION AND ALT-CURSOR KEYS:

     The combination of the ALT key and the cursor keys have all been
      programmed to create an input command corresponding to their respective
      movement or compass directions, i.e., the ALT key and the up-arrow key
      causes a NORTH command to be generated, the ALT key and the home key
      causes a NORTHWEST command to be generated, etc.

      Similarly, the function keys have been predefined to stand for several
      of the most frequently used commands.  Further, by giving the command
      DEFINE, you may re-define any of the function keys to give any command
      you wish.  For example, in this game you might find it useful to
      re-define one of the function keys to give the command KILL ORC WITH AXE
      or GIVE CANDY TO BABY.

      Hitting the '?' key (during the game) will display a diagram of keys and
      their current definitions.


"POP-UP" HINTS:

     This game also has a "pop-up" hint system.  Any time you are stuck and
      need a hint, hit the <Alt> key and the <h> key together and a
      menu-driven system of hints for the game will pop-up for you to use.
      Hitting the ESC key will return you to the game when you are done with
      the hints.


"LOOK-AND-FEEL" OPTIONS:

     This particular game is using a special version of the AGT (Adventure
      Game Toolkit) called the "Master's Edition" which allows the user to
      customize the manner in which the game's general interface is defined
      and to specify the game's overall "look-and-feel."  The user may define
      color schemes, status line options, command input method, size and
      "layout" of the screen, etc.  Once the player has a set of
      "look-and-feel" options he or she likes, these options may be saved as
      the standard defaults for this game and any other AGT game the user
      plays.

      One of the options available is a unique "menu-driven" input option that
      allows the player to enter game commands by selecting words from a menu.
      This option is particularly helpful for players who are often frustrated
      by their inability to figure out an adventure game's vocabulary -- since
      the menu always displays a list of "feasible" (though not always "smart"
      or even appropriate) commands from which the player may make a
      selection.

      The "look-and-feel" options are accessed by hitting the ESC key during
      the game (i.e., not now).


SPECIAL CHALLENGE:

When first released, this game offered a special $100 prize to the first
person to discover 10 "secret words" that were hidden throughout this
adventure!!!  Sorry, but the prize has already been won.

But as a special challenge, the secret words have been left in the game.  Try
to find them!!!

END_INSTRUCTIONS


MAXIMUM_SCORE [Total Points]

MAX_LIVES 10

STARTING_ROOM [end of road]

#INCLUDE HUGEROOM.AGT

SYNONYMS
TURN TWIST
PUSH RUB
DROP POUR INSERT CHANGE
THROW GIVE
LIGHT ON BURN
EXTINGUISH OFF
ATTACK KILL HIT HACK STAB CHOP CUT MURDER HURT DESTROY
TELL ASK YELL TALK
Dummy_Verb1  RIDE
Dummy_Verb2  RELEASE FREE
Dummy_Verb3  WATER
Dummy_Verb4  SAY GO WALK RUN MOVE CRAWL
Dummy_Verb5  FIND SEARCH
Dummy_Verb6  JUMP
Dummy_Verb7  CROSS CLIMB FOLLOW
Dummy_Verb8  WAVE
Dummy_Verb9  FILL
Dummy_Verb10 FEED
Dummy_Verb11 DIG EXCAVATE
Dummy_Verb12 BLAST BREAK DYNAMITE
Dummy_Verb13 FEE FIE FOE FOO
Dummy_Verb14 ABRA ABRACADABRA HOCUS POCUS SESAME SHAZAM AHRIMAN ARTICHOKE YOHO
Dummy_Verb15 CALM WAKE
Dummy_Verb16 TURBO
Dummy_Verb17 XYZZY
Dummy_Verb18 PLUGH
Dummy_Verb19 PLOVER BUILDING
Dummy_Verb20 FOREST
Dummy_Verb21 SLAB STREAMBED
Dummy_Verb22 BEDQUILT HILL
Dummy_Verb23 SHELL DEPRESSION
Dummy_Verb24 ORIENTAL VALLEY
Dummy_Verb25 GIANT SLIT BARREN
Dummy_Verb26 OIL
Dummy_Verb27 RING
Dummy_Verb28 THURB
Dummy_Verb29 ZORTON
Dummy_Verb30 PHUGGG
Dummy_Verb31 SAMOHT
Dummy_Verb32 NOSIDE
Dummy_Verb33 MELENKURION
Dummy_Verb34 SWIM
Dummy_Verb35 FUCK SHIT PISS
Dummy_Verb36 SIT
Dummy_Verb37 KISS
Dummy_Verb38 FOOBAR QWERTY DAVE DAVID MALMBERG
Dummy_Verb39 PRAY
Dummy_Verb40 YES
Dummy_Verb41 NO
Dummy_Verb42 SMELL
Dummy_Verb43 WASH
Dummy_Verb44 OOPS
Dummy_Verb45 ATTACH TIE
END_SYNONYMS

INTRODUCTION

Somewhere nearby is Humongous Cave, where others have found fortunes in
treasure and gold, though it is rumored that some who enter are never seen
again. The object of the game is for you to explore the cave and return
(safely) with as much treasure as possible.  The cave is a mysterious and
magical place.  You will face many puzzling and perilous challenges as you
explore.

END_INTRODUCTION

#COMMENT ******** meta commands

;FLAGS, VARIABLES AND COUNTERS, ETC.
;Flag 0  Display CMD detail as it is being processed
;        enter DEBUG to toggle ON and OFF


#COMMENT -- Vault/Combination example from Alan Bender

FLAG [has read about secret words]
FLAG [has found gold watch]
FLAG [has read commandment list]
FLAG [have given moon shining message]
FLAG [Has smelled the beautiful rose]
FLAG [Has rung the church bells]
FLAG [Has got points for prayer]
FLAG [Pitcher has water in it]
FLAG [Quitting]              ON if really, really, really quitting
FLAG [first number]          ON if player got first number correctly
FLAG [second number]         ON if player has second number correctly
FLAG [third number]          ON when player has all three numbers
FLAG [vault unlocked]        ON when combination is successful
FLAG [vault points earned]   When combination is successful - earn 15 points
FLAG [temporary]             ON as required
FLAG [Has read AGT info in guidebook]
Flag [Has read AGT info in diary]
FLAG [Has visited Hell]      Has visited Hell if ON
FLAG [player has met toad]   Has met toad if ON
FLAG [eggs returned]         Player has got eggs back
FLAG [bear following]        Bear is following if ON
FLAG [bottle full]           Bottle has liquid in it if ON, is empty if OFF
FLAG [cave closed]           Cave is closed if ON, open if OFF
FLAG [troll eliminated]      Troll has been paid off or frighten away if ON
FLAG [lamp lit]              Lantern/Lamp is ON or OFF
FLAG [dark w/o lamp]         ON if it would be dark here if Lantern/Lamp is off
FLAG [new batteries]         ON if Lantern/Lamp has new set of batteries
FLAG [bridge exists]         ON if crystal bridge currently exists
FLAG [armed]                 NOT Using bare hands in attack if ON
#DEFINE [axe/knife] [armed]  also flag to indicate axe or knife is being thrown
#DEFINE [temp] [armed]       also numerous temporary other uses
FLAG [dwarf here]            Dwarf is in room if ON
FLAG [treasure stolen]       Pirate has stolen treasure if ON
FLAG [cave hint offered]     Hint about location of cave has been offered if ON
FLAG [bird toggle]           Toggle flag for different responses to GET BIRD
FLAG [snake toggle]          Toggle flag for different commands about SNAKE
FLAG [programmer angry]      Has angered programmer if ON
FLAG [secret word given]     Programmer has given secret word if ON
FLAG [cave closing]          Cave is in process of closing if ON
FLAG [pirate seen twice]     Pirate has made two appearances if ON
FLAG [maze hint offered]     Hint about moving in mazes has been offered if ON
FLAG [Water here]            There is water at this location if ON
FLAG [Djinn has been freed]  Djinn has been freed and given "backwards" hit
FLAG [Wizard has appeared]   Wizard has appeared if ON
FLAG [Phuggg hint given]     Djinn has given "PHUGGG" hint if ON
FLAG [Vial has exploded]     Vial has exploded if ON
FLAG [Player is very strong] Player has eaten mushroom and is strong if ON
FLAG [Goblins have appeared] Goblins have appeared if ON
FLAG [Has used compass in Rabbit's Warren]
FLAG [Has dug in bottom of hole]
FLAG [Has just said 'ZORTON'] in cylindrical chamber -- playing "end game"
FLAG [Player has thrown something into chasm]
FLAG [Had "hardware failure"]
FLAG [Player is wizard]
FLAG [temp flag]
FLAG [Is PM time?] -- A.M./P.M. Flag

COUNTER [Mushroom strength counter] -- counts turns since player ate mushroom
COUNTER [Goblin counter] -- counts turns since goblins first appeared
COUNTER [Quicksand is hard -- counter] -- counts turn for quicksand to be hard
COUNTER [Rover counter - to all you "Prisoner" fans] -- turns since rover freed

VARIABLE [hours] -- time - hours
VARIABLE [minutes] -- time - minutes
VARIABLE [minutes per move]
#DEFINE [maximum minutes per move] 3
VARIABLE [matches left]
VARIABLE [candles left]
COUNTER [Candle Counter] count of turn's candle has burned
#DEFINE [Candle Life] 20  number of turns a candle will last
VARIABLE [Cold Counter]
VARIABLE [battery life]   count of turns Lamp's batteries will last
VARIABLE [ffff count]     count of FEE FIE FOE FOO words
VARIABLE [cave countdown] countdown until cave closes & master game begins

VARIABLE [Status of Safe]
#COMMENT
                          [Status of Safe] = 0 if safe is closed
                          [Status of Safe] = 1 if safe is open
                          [Status of Safe] = 2 if safe is fused shut
#END_COMMENT


#define [battery max] 500

#define [first] 7               <-- First number of combination (RIGHT)
#define [second] 20             <-- Second number of combination (LEFT]
#define [third] 43              <-- Third number of combination (RIGHT)

;AUTOMATIC COMMANDS

;Set FLAGS based on game or room status

COMMAND ANY
FlagOFF [new batteries] ;first turn of game only - initialize conditions
SetVariableTo [battery life] [battery max]
SetVariableTo [ffff count] 0 ;set FEE FIE FOE FOO count to 0
TurnFlagON [bottle full]
SetVariableTo [matches left] 10
SetVariableTo [candles left] 5
SetVariableTo [Cold Counter] 0
SetVariableTo [Number of treasures dropped] 0
END_COMMAND

COMMAND ANY
FlagOFF [new batteries] ;first turn of game only - initialize conditions
#COMMENT -- initialize time at start of game -- to 6:45 AM
TurnFlagOFF [Is PM time?]
SetVariableTo [minutes] 45
SetVariableTo [hours] 6
TurnFlagON [new batteries]
END_COMMAND

#COMMENT -- Time related stuff

#COMMENT -- Add a random number of minutes to time each move, specifically:
#COMMENT    from 0 to 1 less than [maximum minutes per move], i.e.,
#COMMENT    For example -- from 0 to 3 minutes per move for this game

COMMAND ANY
RandomVariable [minutes per move] [maximum minutes per move]
AddVariables [minutes] [minutes per move]
END_COMMAND

#COMMENT -- Limit minutes to 60 and increase hour if minutes 60 or greater

COMMAND ANY
VariableGT [minutes] 59
SubtractFromVariable [minutes] 60
AddToVariable [hours] 1 ; increase hour if minutes 60 or greater
END_COMMAND

#COMMENT -- Limit hours to 12 and toggle AM/PM flag as appropriate

COMMAND ANY
VariableGT [hours] 12
SubtractFromVariable [hours] 12
ToggleFlag [Is PM time?]
END_COMMAND

#COMMENT -- Announce that moon is shining - when appropriate

COMMAND ANY
NOT AtLocation [end of road]
TurnFlagOFF [have given moon shining message]
END_COMMAND

COMMAND ANY
AtLocation [end of road]
FlagOFF [have given moon shining message]
FlagON [Is PM time?]
VariableGT [hours] 8 ; after 8:00 PM
PrintMessage [Moon is shining!]
BlankLine
END_COMMAND

COMMAND ANY
AtLocation [end of road]
FlagOFF [have given moon shining message]
FlagOFF [Is PM time?]
VariableLT [hours] 6 ; before 6:00 AM
PrintMessage [Moon is shining!]
BlankLine
END_COMMAND

MESSAGE [Moon is shining!]
It is a full moon tonight and you can see quite clearly even though it is night
time.
END_MESSAGE

#COMMENT -- Grandfather clock chimes - when appropriate

COMMAND ANY
AtLocation [Inside building]
VariableEquals [minutes] 0
PrintMessage [clock chimes the hour]
BlankLine
END_COMMAND

COMMAND ANY
AtLocation [Inside building]
VariableEquals [minutes] 15
OR
VariableEquals [minutes] 30
OR
VariableEquals [minutes] 45
PrintMessage [clock chimes the quarter hour]
BlankLine
END_COMMAND

MESSAGE [clock chimes the hour]
The grandfather loudly chimes the hour.  It is now #VAR[hours]#:0#VAR[minutes]#.
END_MESSAGE

MESSAGE [clock chimes the quarter hour]
The grandfather loudly chimes the quarter hour.  It is #VAR[hours]#:#VAR[minutes]#.
END_MESSAGE

COMMAND ANY
TurnFlagOFF [dark w/o lamp]
RoomNeedsLight
TurnFlagON [dark w/o lamp]
END_COMMAND

COMMAND ANY
NOT Present [threatening dwarf]
Destroy [threatening dwarf] ;causes dwarf not to get left in another room
END_COMMAND

COMMAND ANY
TurnFlagOFF [dwarf here]
Present [ON lamp] ;lamp - dwarf can only be seen in light
Present [little dwarf]
OR
Present [threatening dwarf]
TurnFlagON [dwarf here]
END_COMMAND

COMMAND ANY
 NewLife
 TurnFlagOFF [first number]
 TurnFlagOFF [second number]
 TurnFlagOFF [third number]       <--< Reset the vault Combination status
END_COMMAND

#COMMENT -- have candle blow out after [Candle Life] turns

COMMAND ANY
Present [burning candle]
CounterGT [Candle Counter] [Candle Life]
TurnCounterOFF [Candle Counter]
PrintMessage "A sudden draft blows out your candle."
BlankLine
Destroy [burning candle]
VariableEquals [candles left] 0
PrintMessage [Unfortunately, that was your last candle]
BlankLine
END_COMMAND

#COMMENT -- control appearance of vampire bats and their biting of player

COMMAND ANY
FlagOFF [Player is wizard]
Chance 50
InRoom [vampire bats]
NOT IsWearing [Silver Cross]
PrintMessage [A bat just bit you]
BlankLine
GoToRoom [Dead]
KillPlayer
DoneWithTurn
END_COMMAND

COMMAND ANY
Chance 80
AtLocation [R29  Odd Room]
NOT InRoom [vampire bats]
PutInCurrentRoom [vampire bats]
PrintMessage [You hear bat wings flapping]
Blankline
END_COMMAND

MESSAGE [A bat just bit you]
A vampire bat just bit you.  This is normally fatal, so you may wish to make
your peace with God.
END_MESSAGE

MESSAGE [You hear bat wings flapping]
You hear the flapping of many wings.  Bats!!  A shiver of fear shocks your
very being.
END_MESSAGE

#COMMENT -- swap mail for rare stamps if outside private office

COMMAND ANY
NOT AtLocation [private office]
Present [pile of mail]
SwapLocations [pile of mail] [rare stamps]
END_COMMAND

#COMMENT -- Rabbit warren related

COMMAND ANY
AtLocation [inside Rabbit's Warren]
VerbIsDirection
PrintMessage [back where you started]
BlankLine
END_COMMAND

#COMMENT -- COLD area related

COMMAND ANY
FlagOFF [Player is wizard]
AtLocationGT [computer center] ; in cold area of cave
AtLocationLT [valley]
NOT IsWearing [heavy parka] (* NOT wearing parka *)
AddToVariable [Cold Counter] 1 (* Increment count of turns player is cold *)
VariableEquals [Cold Counter] 18 (* 18 turns without parka *)
SetVariableTo [Cold Counter] 0
PrintMessage [You freeze to death]
MinusScore 10
GoToRoom [Dead]
BlankLine
KillPlayer
DoneWithTurn
END_COMMAND

MESSAGE [You freeze to death]
You are not properly dressed for such cold.  Your little body, being exposed
to this an extreme temperature, quickly becomes frozen stiff like a giant
popsicle.
END_MESSAGE

#COMMENT ------- set "Water here" FLAG

COMMAND ANY
TurnFlagOFF [Water here]
RoomFlagON [Water]
TurnFlagON [Water here]
END_MESSAGE

#COMMENT ------- random wizard appearance -- "ends game"

COMMAND ANY
NOT IsWearing [metallic cloak]
FlagOFF [Player is wizard]
Chance 2
TurnsGT 200
FlagOFF [Wizard has appeared]
AtLocationGT [hall of mists]
AtLocationLT [cylindrical chamber] ;most of cave area
FlagOFF [Dwarf here]
PrintMessage [WIZARD.ENDS.GAME]
TurnFlagON [Wizard has appeared]
GoToRoom [Dead]
BlankLine
KillPlayer
DoneWithTurn
END_MESSAGE

MESSAGE [WIZARD.ENDS.GAME]
A large cloud of green smoke appears in front of you.  It clears away to
reveal a tall wizard, clothed in gray.  He fixes you with a steely glare and
declares, "This adventure has lasted too long."  With that he makes a single
pass over you with his hands, and everything around you fades away into a gray
nothingness.
END_MESSAGE

#COMMENT ------- random "hardware failure" -- kills player

COMMAND ANY
NOT IsWearing [metallic cloak]
FlagOFF [Player is wizard]
Chance 2
TurnsGT 200
FlagOFF [Had "hardware failure"]
AtLocationGT [hall of mists]
AtLocationLT [cylindrical chamber] ;most of cave area
FlagOFF [Dwarf here]
PrintMessage [hardware failure]
TurnFlagON [Had "hardware failure"]
GoToRoom [PC ROMs]
BlankLine
KillPlayer
DoneWithTurn
END_MESSAGE

#COMMENT ------- random "cameo" appearances

COMMAND ANY
Chance 3
AtLocationGT [hall of mists]
AtLocationLT [cylindrical chamber] ;most of cave area
FlagOFF [Dwarf here]
RandomMessage [CAMEO 1] [CAMEO 7]
BlankLine
END_MESSAGE

MESSAGE [CAMEO 1]
From somewhere in the distance, there comes a musical skirl of light, elvish
laughter and the sounds of merriment.
END_MESSAGE

#COMMENT  Turn off warnings -- this message is not directly referenced
#OPTIONS :-Warnings

MESSAGE [There is a rumbling sound deep within the earth]
There is a rumbling sound deep within the earth.
END_MESSAGE

MESSAGE [IRS men appear]
Seven men, wearing gray business suits and carrying briefcases, suddenly
appear out of the shadows and surround you.  They identify themselves as
representatives of the Internal Revenue Service!  With absolutely no show of
emotion, they report: "We understand that you have been accumulating some
un-declared income.  We wish to warn you that we are watching you closely as
you play this game, and all of this income must be properly and totally
accounted for on your next tax return.  If it isn't, you will go to jail or
worse!"

They then disappear in a >POOF< of red, white and blue smoke.
END_MESSAGE

MESSAGE [CAMEO 2]
From somewhere nearby, there suddenly comes a sound of something mechanical in
motion.  As you turn toward it, an incredible figure rolls into the light of
your lamp.  It stands about five feet high on a wheeled metal pedestal, and
has a globular light- filled head, accordion-pleated metal arms, and a
cylindrical body the size of an oil drum with a plastic panel on the front.
It rolls past without taking any notice of you, all the while waving its arms,
flashing a light behind its front panel and bellowing "WARNING! WARNING!
DANGER!" at the top of its not inconsiderable voice.  It rolls on out of
sight, and moments later there is an immense flash of light and a tremendous
blast of sparks and smoke.  When the air clears, you find that no trace
remains of the strange apparition.
END_MESSAGE

MESSAGE [CAMEO 3]
With a sudden gust of air, a large cave bat flutters into view, flies around
your head several times, squeaks with disgust, and flutters on out of sight.
END_MESSAGE

MESSAGE [CAMEO 4]
Suddenly, the ground quivers underfoot; a dull rumbling sound resounds from
the rock around you, and in the distance you can hear the crash of falling
rock.  The earth tremor subsides after a few seconds without causing any major
damage.
END_MESSAGE

MESSAGE [CAMEO 5]
From the darkness nearby comes the sound of shuffling feet.  As you turn
toward the sound, a nine-foot cyclops ambles into the light of your lamp.
The cyclops is dressed in a three-piece suit of worsted wool, and is wearing a
black silk top-hat and cowboy boots and is carrying an ebony walking-stick.
It catches sight of you and stops, seeming frozen in its tracks, with its
bloodshot eye bulging in amazement and its fang-filled jaw drooping with
shock.  After staring at you in incredulous disbelief for a few moments, it
reaches into the pocket of its vest and pulls out a small plastic bag filled
with a leafy green substance, and examines it carefully.  "It must be worth
eighty pazools an ounce after all" mumbles the cyclops, who casts one final
look at you, shudders, and staggers away out of sight.
END_MESSAGE

MESSAGE [CAMEO 6]
From somewhere in the distance comes a heart-wrenching scream of mortal
terror!  "NO!  DON'T!  NO!  NO!  HELP!!!!" cries the voice, and then lets out
a wail of agony that is cut off abruptly.  Subdued crunching and slurping
sounds can be heard for a minute or so, and then silence falls.
END_MESSAGE

#COMMENT Return "Warnings" to its previous state
#OPTIONS =Warnings

MESSAGE [CAMEO 7]
From somewhere nearby come the sounds of sliding, stumbling feet. As you turn
toward them, the beam of your lamp falls upon a tall, shambling figure
approaching you out of the darkness.  Standing no more than five feet tall, it
cannot possibly weigh more than fifty pounds including the shroud and bandages
in which it is wrapped; a musty reek like the scent of old, dead earth seeps
from it and fills the air.  As you cower back in disgust and horror, the
figure halts, examines you through eyes resembling wet pebbles, and whispers
"Peace, man!" in a voice like wind rustling through dead trees.  It then turns
and shambles away into the darkness.
END_MESSAGE

;Commands to deal with lamp/light status and countdown

COMMAND ANY
FlagOFF [Player is wizard]
FlagON [lamp lit]
SubtractFromVariable [battery life] 1 ;countdown to zero when batteries are dead
END_COMMAND

COMMAND ANY
FlagON [lamp lit]
VariableEquals [battery life] 26 ;batteries almost dead
Present [ON lamp]
PrintMessage [battery hint]
BlankLine
END_COMMAND

COMMAND ANY
FlagON [lamp lit]
VariableLT [battery life] 26 ;batteries almost dead
VariableGT [battery life] 0
Present [ON lamp]
PrintMessage [lamp growing weaker]
BlankLine
END_COMMAND

MESSAGE [lamp growing weaker]
The batteries in your lamp are growing weaker.  They will only last for #VAR[battery life]#
more turns!
END_MESSAGE

COMMAND ANY
VariableEquals [battery life] 0 ;countdown to zero when batteries are dead
Present [ON lamp]
PrintMessage "Your lamp has run out of power."
TurnFlagOFF [lamp lit]
SwapLocations [ON lamp] [OFF lamp]
PrintMessage [call it a day]
GoToRoom [Dead]
BlankLine
DoneWithTurn
END_COMMAND

COMMAND ANY
NOT Present [Burning Candle]
NOT Present [ON lamp]
FlagON [dark w/o lamp]
PrintMessage [now dark]
NOT AtLocation [debris room]       ;XYZZY location
NOT AtLocation [Y2]                ;PLUGH location
NOT AtLocation [programmer's den]  ;TURBO location
Chance 25
PrintMessage "You fell into a pit and broke every bone in your body!"
GoToRoom [bottom of the pit]
MinusScore 10 ;lose 10 points for dying
SendToRoom [OFF lamp] [inside building]
Destroy [ON lamp]
KillPlayer
DoneWithTurn
END_COMMAND

#COMMENT -- commands to control meeting toad and have toad follow player

COMMAND ANY
Present [horny toad]
TurnFlagON [player has met toad]
END_COMMAND

COMMAND ANY
IsSomewhere [horny toad]
FlagON [player has met toad]
PutInCurrentRoom [horny toad]
VerbIsDirection (* moving to another location *)
PrintMessage [The toad hops along after you]
BlankLine
END_COMMAND

MESSAGE [The toad hops along after you]
The toad hops along after you.
END_MESSAGE

COMMAND ANY
Chance 20
Present [horny toad]
PrintMessage [The toad says: RIB-BIT!]
BlankLine
END_COMMAND

MESSAGE [The toad says: RIB-BIT!]
The toad says: RIB--BIT!
END_MESSAGE

;Commands to deal with random pirate activities

COMMAND ANY
Chance 5
AtLocationGT [hall of mists]
AtLocationLT [cylindrical chamber] ;most of cave area
PrintMessage "There are faint rustling noises from the darkness behind you."
BlankLine
FlagON [treasure stolen]
FlagOFF [pirate seen twice] ;hasn't made both appearances
IsNowhere [treasure chest]
PrintMessage [pirate hides chest]
BlankLine
SendToRoom [treasure chest] [pirate's den]
TurnFlagON [pirate seen twice] ;pirate is now done
END_COMMAND

COMMAND ANY
Chance 15
FlagOFF [treasure stolen]
AtLocationGT [hall of mists]
AtLocationLT [cylindrical chamber] ;most of cave area
NOT AtLocation [plover room]
NOT AtLocation [dark-room]
IsCarryingTreasure 5 ;carrying something worth more than 4 points
PrintMessage [pirate steals treasure]
BlankLine
TurnFlagON [treasure stolen]
SendTreasuresToRoom [pirate's den] 5
END_COMMAND

MESSAGE [pirate steals treasure]
Out from the shadows behind you pounces a bearded pirate!  "Har, har" he
chortles, "I'll just take all this booty and hide it away with me chest deep
in the maze!".  He snatches your treasure and vanishes into the gloom.
END_MESSAGE

;Commands to deal with random dwarf attacks on player

COMMAND ANY
Chance 25
IsNowhere [dwarf's axe]
AtLocationGT [hall of mists]
AtLocationLT [cylindrical chamber] ;most of cave area
Present [ON lamp] ;lamp - dwarf can only be seen in light
PrintMessage [dwarf throws axe]
PutInCurrentRoom [dwarf's axe]
BlankLine
DoneWithTurn
END_COMMAND

MESSAGE [dwarf throws axe]
A little dwarf just walked around a corner, saw you, threw a little axe at you
which missed, cursed, and ran away.
END_MESSAGE

COMMAND ANY
FlagOFF [Player is wizard]
Chance 3
FlagOFF [dwarf here]
AtLocationGT [hall of mists]
AtLocationLT [cylindrical chamber] ;most of cave area
NOT AtLocation [programmer's den]
Present [ON lamp] ;lamp - dwarf can only be seen in light
PrintMessage [threatening dwarf in room]
BlankLine
PutInCurrentRoom [little dwarf]
TurnFlagON [dwarf here]
END_COMMAND

COMMAND ANY
FlagOFF [Player is wizard]
Chance 3
FlagOFF [dwarf here]
AtLocationGT [hall of mists]
AtLocationLT [cylindrical chamber] ;most of cave area
NOT AtLocation [programmer's den]
Present [ON lamp] ;lamp - dwarf can only be seen in light
PrintMessage [threatening dwarf in room]
PutInCurrentRoom [threatening dwarf]
BlankLine
TurnFlagON [dwarf here]
END_COMMAND

COMMAND ANY
VerbIsDirection ;player trying to move out of room
Present [little dwarf]
Present [ON lamp] ;lamp - dwarf can only be seen in light
PrintMessage "A little dwarf with a big knife blocks your way."
DoneWithTurn
END_COMMAND

COMMAND ANY
FlagON [dwarf here]
Chance 34
Present [ON lamp] ;lamp - dwarf can only be seen in light
TurnFlagON [axe/knife] ;a knife is being thrown
PrintMessage "A sharp, nasty knife is thrown at you!"
BlankLine
Chance 60
PrintMessage "The knife just misses you by inches!"
TurnFlagOFF [axe/knife] ;knife no longer being thrown
BlankLine
END_COMMAND

COMMAND ANY
FlagON [axe/knife] ;knife was thrown
IsWearing [metallic cloak]
PrintMessage "The knife bounces harmlessly off your magic cloak."
TurnFlagOFF [axe/knife] ;knife no longer being thrown
BlankLine
END_COMMAND

COMMAND ANY
FlagON [axe/knife] ;knife was thrown AND not wearing cloak
PrintMessage
The knife is thrown very accurately and gets you in the middle of the chest!

END_Message
TurnFlagOFF [axe/knife] ;knife no longer being thrown
MinusScore 10 ;lose 10 points for dying
SendToRoom [OFF lamp] [inside building]
Destroy [ON lamp]
KillPlayer
DoneWithTurn
END_COMMAND

;Commands to close cave

COMMAND ANY
FlagON [Got all the treasures]
FlagOFF [cave closed] ;cave still open
FlagOFF [cave closing] ;haven't starting to close yet
SetVariableTo [cave countdown] 11 ;10 turns until master game
LockIt [iron grate]
CloseIt [iron grate]
Destroy [iron keys]
SendToRoom [crystal bridge] [east bank of fissure]
SendToRoom [crystal bridge 2] [west side of fissure]
Destroy [open fissure] ;phony bridge
Destroy [phony troll]
Destroy [burly troll]
Destroy [bridge wreckage]
END_COMMAND

;Continuation of previous COMMAND
COMMAND ANY
FlagON [Got all the treasures]
FlagOFF [cave closed] ;cave still open
FlagOFF [cave closing] ;haven't starting to close yet
TurnFlagON [cave closing] ;now we have
SendToRoom [rickety bridge] [SW chasm]
Destroy [ferocious bear]
Destroy [gentle bear]
Destroy [contented bear]
PlusScore 40
PrintMessage [closing soon]
BlankLine
END_COMMAND

MESSAGE [closing soon]
A sepulchral voice reverberating through the cave says: "Cave closing soon.
All adventurers exit immediately through main office."
END_MESSAGE

COMMAND ANY
FlagON [cave closing]
SubtractFromVariable [cave countdown] 1
VariableGT [cave countdown] 0
VariableLT [cave countdown] 9
PrintMessage "The cave will close in #VAR[cave countdown]# turns!"
BlankLine
END_COMMAND

COMMAND ANY
FlagON [cave closing]
VariableEquals [cave countdown] 0
SendTreasuresToRoom [inside building] 5
SendAllToRoom [NoWhere] ;destroy all other carried items
GetIT [ON Lamp]
SetVariableTo [battery life] 50 ;lamp will be on for 50 turns
PrintMessage [cave now closed]
BlankLine
END_COMMAND

MESSAGE [cave now closed]
The sepulchral voice entones, "The cave is now closed."  As the echoes fade,
there is a blinding flash of light (and a small puff of orange smoke).  . . .

As your eyes refocus you look around and find...
END_MESSAGE

;Continuation of previous COMMAND

COMMAND ANY
FlagON [cave closing]
VariableEquals [cave countdown] 0
TurnFlagON [cave closed]
RemoveEverything
PlusScore 20
END_COMMAND

;Continuation of previous COMMAND

COMMAND ANY
FlagON [cave closing]
VariableEquals [cave countdown] 0
#COMMENT swap "slit" room and "fake slit" room
GoToRoom [fake slit]
ChangePassageway [NORTH] [valley]
ChangePassageway [EAST] [forest (near road)]
ChangePassageway [SOUTH] [depression outside grate]
ChangePassageway [WEST] [hill by road]
GoToRoom [cylindrical chamber]
DoneWithTurn
END_COMMAND

#COMMENT ------- Djinn gives Phuggg hint

COMMAND ANY
Chance 5
AtLocationGT [hall of mists]
AtLocationLT [cylindrical chamber] ;most of cave area
FlagOFF [Dwarf here]
FlagON [Djinn has been freed]
FlagOFF [Phuggg hint given]
PrintMessage [PHUGGG.HINT]
BlankLine
TurnFlagON [Phuggg hint given]
END_MESSAGE

MESSAGE [PHUGGG.HINT]
A large phosphorescent cloud of smoke drifts into view, and a large mouth and
two dark eyes take shape on the side.  One of the eyes winks at you, and the
djinn's deep voice says "GREETINGS AGAIN, MORTAL.  I HAVE REMEMBERED A PIECE
OF ANCIENT LORE THAT I LEARNED FROM MY AUNT, AN AFREET OF GREAT KNOWLEDGE.
THERE IS ANOTHER MAGIC WORD THAT YOU MIGHT FIND OF USE IF YOU SHOULD EVER FIND
YOURSELF BEING ATTACKED BY THOSE PESTIFEROUS DWARVES.  YOU SHOULD USE IT ONLY
AS A LAST RESORT, THOUGH, SINCE IT IS A MOST POTENT WORD AND IS PRONE TO
BACKFIRE FOR NO OBVIOUS REASON; ALSO, IT SHOULD NEVER BE USED NEAR WATER OR
NEAR ANY SHARP WEAPON OR THE RESULTS MAY BE MOST UNFORTUNATE.  THE WORD IS
'phuggg'", whispers the djinn, "AND IT MUST BE PRONOUNCED CAREFULLY IF IT IS
TO HAVE THE PROPER EFFECT.  FAREWELL AGAIN, AND GOOD LUCK!"  With that, the
djinn-cloud drifts away out of sight.
END_MESSAGE

#COMMENT ------- mushroom wears off

COMMAND ANY
CounterGT [Mushroom strength counter] 12
TurnFlagOFF [Player is very strong]
TurnCounterOFF [Mushroom strength counter]
PrintMessage [You get weak]
BlankLine
SendToRoom [small mushroom - growing] [dank cubicle] ; mushroom grows back
END_MESSAGE

MESSAGE [You get weak]
A strange malaise suddenly afflicts you.  You shiver with chill, and your
muscles seem to turn to putty; everything around you becomes gray and unreal.
The fit quickly passes, and you find that your body has degenerated back to
what it was like before you ate the mushroom.
END_MESSAGE

#COMMENT ------- Goblins appearance and follow player

#COMMENT
When you first try to exit the "translucent room", a horde of slavering
goblins appear.  They continue to follow you until you kill them by throwing
the dragon's teeth at them or five turns have elapsed -- at when point they
kill you.
#END_COMMENT

COMMAND ANY
CounterGT [Goblin counter] 5
TurnFlagOFF [Goblins have appeared]
TurnCounterOFF [Goblin counter]
PrintMessage [Goblins kill you]
Destroy [gooseberry goblins]
GoToRoom [Dead]
BlankLine
KillPlayer
DoneWithTurn
END_COMMAND

MESSAGE [Goblins appear]
Suddenly and without warning, there appears from within the very cave walls
around you a horde of vicious little goblins!  Each one stands about eight
inches high on a pair of spindly black legs, has a globular, spine-covered
body resembling a giant gooseberry, a wide mouth filled with sharp teeth, and
a pair of glittering little green eyes!  They swarm around you and try to
block your way.
END_MESSAGE

MESSAGE [Goblins are here - 1]
You are surrounded by a horde of silent little gooseberry goblins!
END_MESSAGE

MESSAGE [Goblins are here - 2]
One of the gooseberry goblins begins to giggle in a high-pitched voice.
Another takes up the giggling, then another....  soon all of them are giggling
insanely and jumping up and down with glee!
END_MESSAGE
 
MESSAGE [Goblins are here - 3]
You are now surrounded by a giggling horde of little gooseberry goblins!
END_MESSAGE

MESSAGE [Goblins are here - 4]
The goblins are jumping up and down frantically, and are working themselves
into a real slavering frenzy!!
END_MESSAGE
 
MESSAGE [Goblins are here - 5]
Now, you are surrounded by a slavering horde of gooseberry goblins!
END_MESSAGE

MESSAGE [Goblins kill you]
With a shrill cry, the gooseberry goblins hurl themselves upon you, tickling
you mercilessly.  You crush and hurl away several of them, but are soon borne
down to the ground by the endless attack.  The goblins then gleefully rip out
your throat, and you sink into unconsciousness.
END_MESSAGE

COMMAND ANY
CounterGT [Goblin counter] 0
PutInCurrentRoom [gooseberry goblins]
VerbIsDirection
PrintMessage [GOBLIN.CHASE]
BlankLine
END_COMMAND

COMMAND ANY
CounterEquals [Goblin counter] 1
PrintMessage [Goblins are here - 1]
BlankLine
END_COMMAND

COMMAND ANY
CounterEquals [Goblin counter] 2
PrintMessage [Goblins are here - 2]
BlankLine
END_COMMAND

COMMAND ANY
CounterEquals [Goblin counter] 3
PrintMessage [Goblins are here - 3]
BlankLine
END_COMMAND

COMMAND ANY
CounterEquals [Goblin counter] 4
PrintMessage [Goblins are here - 4]
BlankLine
END_COMMAND

COMMAND ANY
CounterEquals [Goblin counter] 5
PrintMessage [Goblins are here - 5]
BlankLine
END_COMMAND

MESSAGE [GOBLIN.CHASE]
You are being pursued by a vicious horde of little gooseberry goblins!
END_MESSAGE

#COMMENT ------- Singing sword randomly sings something different

COMMAND ANY
Present [singing sword]
Chance 8
RandomMessage [sword song 1] [sword song 10]
BlankLine
END_COMMAND

MESSAGE [sword song 1]
The magic sword chimes out the bell-like tones of "Khumbu Ice-fall" by ringing
its blade against the ground.
END_MESSAGE

#COMMENT  Turn off warnings -- this message is not directly referenced
#OPTIONS :-Warnings

MESSAGE [sword song 2]
The sword begins to sing "A Day in the Life" in a quiet, introspective voice.
END_MESSAGE

MESSAGE [sword song 3]
The magic sword begins singing "Cold Blue Steel and Sweet Fire" to itself in a
plaintive, hopeless voice.
END_MESSAGE

MESSAGE [sword song 4]
The sword starts to jauntily whistling the March from Tchaikovsky's
"Nutcracker Suite".
END_MESSAGE

MESSAGE [sword song 5]
The sword is (somehow) singing Tchaikovsky's "1812 Overture" in twelve parts,
by itself!
END_MESSAGE

MESSAGE [sword song 6]
The stirring strains of Rossini's "William Tell" overture fill the room,
coming from the singing sword.
END_MESSAGE

MESSAGE [sword song 7]
From the singing sword resound the massed voices of a two-hundred-singer
choir, filling the air with the stirring sound of the Hallelujah Chorus from
Handel's "Messiah".
END_MESSAGE

MESSAGE [sword song 8]
The sharp and shiny sword somehow managing to sing Harry Partch's "Daphne of
the Dunes" without destroying its singing organs (whatever they happen to
be...)
END_MESSAGE

MESSAGE [sword song 9]
The sword begins singing "Witchi-Tai-To" in two-part harmony with itself.
END_MESSAGE

#COMMENT Return "Warnings" to its previous state
#OPTIONS =Warnings

MESSAGE [sword song 10]
The singing sword is glowing and vibrating, and the eerie electronic notes of
Charles Wuorinen's "Time's Encomium" issue from its blade and fill the air.
END_MESSAGE

#COMMENT ------- Put various Safes and exits from safe where they belong

COMMAND ANY
AtLocation [room with vaulted ceiling]
PutInCurrentRoom [walk-in safe - closed]
VariableEquals [Status of Safe] 1
PutInCurrentRoom [walk-in safe - open]
Destroy [walk-in safe - closed]
GoToRoom [in the safe]
ChangePassageway [Exit] [room with vaulted ceiling]
ChangePassageway [South] [room with vaulted ceiling]
ChangePassageway [North] [NoWhere]
PutInCurrentRoom [safe door - south]
Destroy [safe door - north]
GoToRoom [room with vaulted ceiling]
END_COMMAND

COMMAND ANY
AtLocation [room with vaulted ceiling]
VariableEquals [Status of Safe] 2
PutInCurrentRoom [walk-in safe - fused shut]
Destroy [walk-in safe - closed]
END_COMMAND

COMMAND ANY
AtLocation [room with vaulted ceiling]
NOT VariableEquals [Status of Safe] 1
ChangePassageway [Enter] [NoWhere]
ChangePassageway [North] [hall of mt. king]
END_COMMAND

COMMAND ANY
AtLocation [peelgrunt room]
PutInCurrentRoom [walk-in safe - closed]
VariableEquals [Status of Safe] 1
PutInCurrentRoom [walk-in safe - open]
Destroy [walk-in safe - closed]
GoToRoom [in the safe]
ChangePassageway [Exit] [peelgrunt room]
ChangePassageway [North] [peelgrunt room]
PutInCurrentRoom [safe door - north]
Destroy [safe door - south]
ChangePassageway [South] [NoWhere]
GoToRoom [peelgrunt room]
END_COMMAND

COMMAND ANY
AtLocation [peelgrunt room]
VariableEquals [Status of Safe] 2
PutInCurrentRoom [walk-in safe - fused shut]
Destroy [walk-in safe - closed]
END_COMMAND

COMMAND ANY
AtLocation [peelgrunt room]
NOT VariableEquals [Status of Safe] 1
ChangePassageway [Enter] [NoWhere]
ChangePassageway [Exit] [passage by steps]
ChangePassageway [South] [passage by steps]
END_COMMAND

#COMMENT ------- various Rover messages and actions

COMMAND ANY
CounterEquals [Rover counter - to all you "Prisoner" fans] 3
PrintMessage "The bubbling sound grows louder."
BlankLine
END_COMMAND

COMMAND ANY
CounterEquals [Rover counter - to all you "Prisoner" fans] 6
PrintMessage "The bubbling sound ends with a loud >splash<."
BlankLine
END_COMMAND

COMMAND ANY
CounterEquals [Rover counter - to all you "Prisoner" fans] 9
PrintMessage "A hollow, echoing >ROAR< sounds in the distance."
BlankLine
END_COMMAND

COMMAND ANY
CounterEquals [Rover counter - to all you "Prisoner" fans] 12
PrintMessage "A strange throbbing sound can be heard in the distance."
BlankLine
END_COMMAND

COMMAND ANY
CounterEquals [Rover counter - to all you "Prisoner" fans] 15
PrintMessage "The throbbing sound is growing louder."
BlankLine
END_COMMAND

COMMAND ANY
CounterEquals [Rover counter - to all you "Prisoner" fans] 18
PrintMessage [The sound is approaching quickly]
BlankLine
END_COMMAND

MESSAGE [The sound is approaching quickly]
The source of the throbbing sound is approaching quickly.  Another hollow
>ROAR< echoes through the cave.
END_MESSAGE

COMMAND ANY
CounterEquals [Rover counter - to all you "Prisoner" fans] 21
PrintMessage "There is a loud >ROAR< only a short distance away!!"
BlankLine
END_COMMAND

COMMAND ANY
CounterEquals [Rover counter - to all you "Prisoner" fans] 24
PrintMessage [It is an immense blob]
BlankLine
PutInCurrentRoom [Rover]
END_COMMAND

MESSAGE [It is an immense blob]
Into view there bounces a horrible creature!!  Six feet across, it resembles a
large blob of translucent white jelly; although it looks massive, it is
bouncing lightly up and down as though it were as light as a feather.  It is
emitting a constant throbbing sound, and it >ROAR<s loudly as it sees you.
 
There is an immense and unfriendly-looking blob in the room with you!
END_MESSAGE

COMMAND ANY
CounterGT [Rover counter - to all you "Prisoner" fans] 32
TurnCounterOFF [Rover counter - to all you "Prisoner" fans]
PrintMessage [Rover kills you!]
Destroy [Rover]
GoToRoom [Dead]
BlankLine
KillPlayer
DoneWithTurn
END_COMMAND

COMMAND ANY
CounterGT [Rover counter - to all you "Prisoner" fans] 24
PutInCurrentRoom [Rover]
VerbIsDirection
PrintMessage [ROVER.CHASE]
BlankLine
END_COMMAND

MESSAGE [Rover kills you!]
The blob >ROAR<s triumphantly and bounces straight at you with amazing speed,
crushing you to the ground and cutting off your air supply with its body.  You
quickly suffocate.
END_MESSAGE

MESSAGE [ROVER.CHASE]
The blob bounces after you with incredible speed; it follows your every move.
END_MESSAGE

COMMAND ANY
CounterGT [Rover counter - to all you "Prisoner" fans] 24
NOT VerbIsDirection
PrintMessage [ROVER.BUMPS.YOU]
BlankLine
END_COMMAND

MESSAGE [ROVER.BUMPS.YOU]
The blob >ROAR<s and bounces straight at you with amazing speed, bumping you.
END_MESSAGE

#COMMENT ------- Quicksand gets "soft" after 5 turns

COMMAND ANY
CounterGT [Quicksand is hard -- counter] 5
TurnCounterOFF [Quicksand is hard -- counter]
END_COMMAND

#COMMENT ------- Jump from platform above volcano and get fried!

COMMAND ANY
VerbIsDirection
AtLocation [tiny platform above volcano]
PrintMessage [SIZZLE]
GoToRoom [Dead]
BlankLine
KillPlayer
DoneWithTurn
END_COMMAND

MESSAGE [SIZZLE]
EEEEEEEEEAAAAAAAAAAAaaaaaahhhhhhhhhhhhh..........        >sizzle<
END_MESSAGE

;Commands to deal with other random activities

COMMAND ANY
FlagON [bear following]
PutInCurrentRoom [contented bear]
END_COMMAND

COMMAND ANY
AtLocation [Y2]
Chance 25
PrintMessage "A hollow voice says "Plugh"."
BlankLine
END_COMMAND

COMMAND ANY
AtLocation [Y2]
Chance 15
PrintMessage "A hollow voice says "Plover"."
BlankLine
END_COMMAND

COMMAND ANY
NOT AtLocation [SW chasm] ;one side of troll bridge
NOT AtLocation [NE chasm] ;other side
Destroy [burly troll]
Destroy [phony troll]
TurnFlagOFF [troll eliminated] ;troll can now appear when you try to cross bridge
END_COMMAND

COMMAND ANY
NOT AtLocation [east bank of fissure] ;one side
NOT AtLocation [west side of fissure] ;other side
Destroy [open fissure] ;phony bridge
END_COMMAND

;Commands to offer and give HINTS

COMMAND ANY
FlagOFF [cave hint offered]
AtLocation [forest]
OR
AtLocation [forest (near road)]
TurnFlagON [cave hint offered]
PrintMessage "Are you trying to get into the cave?"
PromptForYes
PrintMessage [want the hint?]
PromptForYes
TurnFlagON [temp] ;hint has been rejected - so far
PrintMessage [hint costs 5]
PrintMessage [is this acceptable?]
PromptForYes
TurnFlagOFF [temp] ;hint has been accepted
PrintMessage [follow the stream]
MinusScore 5
DoneWithTurn
END_COMMAND

;Direction commands

;BEAR related

COMMAND ANY
VerbIsDirection
FlagON [bear following]
PrintMessage "You are being followed by a very large, tame bear."
BlankLine
END_COMMAND

;CLAM/OYSTER related

COMMAND ANY
VerbIsDirection
IsCarrying [giant clam]
PrintMessage "You can't fit this five-foot clam through that little passage!"
DoneWithTurn
END_COMMAND

COMMAND ANY
VerbIsDirection
IsCarrying [giant oyster]
PrintMessage "You can't fit this five foot oyster through that little passage!"
DoneWithTurn
END_COMMAND

;DRAGON related

COMMAND ANY
InRoom [green dragon]
VerbIsDirection
PrintMessage [better not] ;Dragon won't let you
DoneWithTurn
END_COMMAND

;Witt's End related

COMMAND ANY
AtLocation [witt's end]
VerbIsDirection
PrintMessage [back where you started]
BlankLine
END_COMMAND

#COMMENT ------- NORTH

COMMAND NORTH
Present [Gigantic Rabbit]
PrintMessage
The rabbit won't let you pass.  He hits you several times with his cane.
End_Message
DoneWithTurn
END_COMMAND

COMMAND NORTH
AtLocation [In the middle of the duct]
OR
AtLocation [In the middle of the duct - 2]
OR
AtLocation [In the middle of the duct - 3]
PrintMessage [Middle to North]
BlankLine
END_COMMAND

COMMAND NORTH
AtLocation [end of the duct]
PrintMessage [You crawl north into duct]
BlankLine
END_COMMAND

COMMAND NORTH
AtLocation [Southern end of long hall]
PrintMessage [You must use access card]
DoneWithTurn
END_COMMAND

COMMAND NORTH
AtLocation [programmer's den]
FlagOFF [programmer angry] ;programmer is not angry
FlagOFF [secret word given] ;programmer has not given his secret word
TurnFlagON [secret word given]
PrintMessage [progammer gives password]
BlankLine
GetIt [access card]
END_COMMAND

COMMAND NORTH
AtLocation [bedquilt room]
Chance 33
GoToRoom [north-south canyon above passage]
DoneWithTurn
END_COMMAND

COMMAND NORTH
AtLocation [bedquilt room]
Chance 50
GoToRoom [junction of canyons]
DoneWithTurn
END_COMMAND

COMMAND NORTH
AtLocation [bedquilt room]
GoToRoom [large low room]
DoneWithTurn
END_COMMAND

COMMAND NORTH
InRoom [green snake]
PrintMessage [that's unsafe]
DoneWithTurn
END_COMMAND

COMMAND NORTH
InRoom [rusty door]
PrintMessage [too rusty to open]
PrintMessage [hinges rusted]
DoneWithTurn
END_COMMAND

MESSAGE [hinges rusted]
The hinges are quite thoroughly rusted now and won't budge.
END_MESSAGE

COMMAND NORTH
AtLocation [reservoir]
PrintMessage [CANT.SWIM]
DoneWithTurn
END_COMMAND

COMMAND NORTH
AtLocation [breath-taking view]
NOT Present [wheatstone bridge 1]
PrintMessage [NO.ARCH]
DoneWithTurn
END_COMMAND

COMMAND NORTH
AtLocation [breath-taking view]
Present [wheatstone bridge 1]
FlagON [bear following]
PrintMessage [LEAVE.BEAR]
DoneWithTurn
END_COMMAND

COMMAND NORTH
AtLocation [breath-taking view]
Present [wheatstone bridge 1]
IsCarrying [mithril ring]
PrintMessage [FUMES.MISS]
GoToRoom [S end of Stone Faces]
BlankLine
DoneWithTurn
END_COMMAND

COMMAND NORTH
AtLocation [breath-taking view]
Present [wheatstone bridge 1]
NOT IsCarrying [mithril ring]
PrintMessage [FUMES.BURN]
GoToRoom [Dead]
BlankLine
KillPlayer
DoneWithTurn
END_COMMAND

MESSAGE [NO.ARCH]
I'm afraid you can't go that way - walking on red-hot lava is contrary to
union regulations (and is bad for your health anyhow).
END_MESSAGE

MESSAGE [LEAVE.BEAR]
That archway looks pretty fragile - you'd better leave the bear here.
END_MESSAGE

MESSAGE [FUMES.BURN]
As you approach the center of the archway, hot vapors saturated with brimstone
drift up from the lava in the gorge beneath your feet.  You are swiftly
overcome by the foul gasses and, with your lungs burned out, fall off of the
bridge and into the gorge.
END_MESSAGE

MESSAGE [FUMES.MISS]
As you approach the center of the archway, hot vapors saturated with brimstone
drift up from the lava in the gorge beneath your feet.  The mithril ring in
your hand quivers and glows, and the fumes eddy away from the bridge without
harming you.
END_MESSAGE

COMMAND NORTH
AtLocation [N end of Stone Faces]
Present [Statue of minotaur]
GoToRoom [passage near basilisk's den]
DoneWithTurn
END_COMMAND

COMMAND NORTH
AtLocation [passage near basilisk's den]
IsSomeWhere [basilisk - north]
GoToRoom  [north of basilisk's den]
PrintMessage [BAS.GRUMBLE]
BlankLine
DoneWithTurn
END_COMMAND

MESSAGE [BAS.GRUMBLE]
The basilisk stirs restlessly and grumbles in its sleep, but it does not
awaken.
END_MESSAGE

COMMAND NORTH
AtLocation [room with vaulted ceiling]
Present [walk-in safe - open]
PrintMessage [SAFE.BLOCKS]
DoneWithTurn
END_COMMAND

COMMAND NORTH
AtLocation [bottom of icy slide]
PrintMessage [SLIDE.SLIPPERY]
DoneWithTurn
END_COMMAND

COMMAND NORTH
Present [ogre blocking your path]
PrintMessage [OGRE.BLOCKS]
DoneWithTurn
END_COMMAND

MESSAGE [OGRE.BLOCKS]
The ogre growls at you and refuses to let you pass.
END_MESSAGE

#COMMENT ------- SOUTH

COMMAND SOUTH
AtLocation [At Turn In Duct]
PrintMessage [North to Middle]
BlankLine
END_COMMAND

COMMAND SOUTH
AtLocation [In the middle of the duct]
OR
AtLocation [In the middle of the duct - 2]
OR
AtLocation [In the middle of the duct - 3]
PrintMessage [Middle to South]
BlankLine
END_COMMAND

COMMAND SOUTH
InRoom [green snake]
PrintMessage [that's unsafe]
DoneWithTurn
END_COMMAND

COMMAND SOUTH
AtLocation [programmer's den]
FlagOFF [programmer angry] ;programmer is not angry
FlagOFF [secret word given] ;programmer has not given his secret word
TurnFlagON [secret word given]
PrintMessage [progammer gives password]
BlankLine
GetIt [access card]
END_COMMAND

MESSAGE [progammer gives password]
A bearded programmer steps out from the shadows and says, "Since you didn't
try to steal any of my stuff, I'll give you a special plastic card and reveal
a secret password.  Use the password wisely and enjoy your stay in HUMONGOUS
CAVE, my son."  With that, the programmer vanishes, leaving a few 0 and 1 bits
that briefly form the word:

     TURBO

END_MESSAGE

COMMAND SOUTH
AtLocation [N end of reservoir]
Present [Darwin the turtle]
PrintMessage [TURTLE.BACK]
SendToRoom [Darwin the turtle] [nowhere]
GoToRoom [reservoir]
BlankLine
DoneWithTurn
END_COMMAND

COMMAND SOUTH
AtLocation [N end of reservoir]
NOT Present [Darwin the turtle]
PrintMessage [CANT.SWIM]
DoneWithTurn
END_COMMAND

COMMAND SOUTH
AtLocation [S end of Stone Faces]
NOT Present [wheatstone bridge 2]
PrintMessage [NO.ARCH]
DoneWithTurn
END_COMMAND

COMMAND SOUTH
AtLocation [S end of Stone Faces]
Present [wheatstone bridge 2]
IsCarrying [mithril ring]
NOT IsCarrying [sapphire-encrusted sceptre]
PrintMessage [FUMES.MISS]
GoToRoom [breath-taking view]
BlankLine
DoneWithTurn
END_COMMAND

COMMAND SOUTH
AtLocation [S end of Stone Faces]
Present [wheatstone bridge 2]
IsCarrying [mithril ring]
IsCarrying [sapphire-encrusted sceptre]
PrintMessage [GHOST.BANG]
GoToRoom [Dead]
BlankLine
KillPlayer
Destroy [wheatstone bridge 1]
Destroy [wheatstone bridge 2]
DoneWithTurn
END_COMMAND

MESSAGE [GHOST.BANG]
As you reach the center of the bridge, a ghostly figure appears in front of
you.  He (?) stands at least eight feet tall, and has the lower body of an
enormous snake, six arms, and an angry expression on his face.  "You'll not
have my sceptre that easily!" he cries, and makes a complex magical gesture
with his lower right arm.  There is a brilliant flash of light and a vicious
>crack<, and the bridge cracks and plummets into the gorge.
END_MESSAGE

COMMAND SOUTH
AtLocation [S end of Stone Faces]
Present [wheatstone bridge 2]
NOT IsCarrying [mithril ring]
PrintMessage [FUMES.BURN]
GoToRoom [Dead]
BlankLine
KillPlayer
DoneWithTurn
END_COMMAND

MESSAGE [PETRIFY.SELF]
The basilisk stirs grumpily and awakens, peering sleepily about.  It sees its
reflection in the metal plate that you are carrying, shudders, and turns into
solid granite.
END_MESSAGE
 
MESSAGE [PETRIFY.ME]
The basilisk stirs grumpily and awakens, peering sleepily about.  It spies
you, growls, and stares you straight in the eye.  Your body is instantly
petrified.
END_MESSAGE

COMMAND SOUTH
AtLocation [steep slide in lava tube]
GoToRoom [S end of fog-filled room]
PrintMessage [OOF]
BlankLine
DoneWithTurn
END_COMMAND

#COMMENT
You must be carrying the metal plate when you go SOUTH from "north of
basilisk's den" to get past the Basilisk.  When you do the Basilisk sees
his reflection in the plate and it petrifies him.

If you are not carrying the plate, the Basilisk wakes up and looks at you and
you get petrified and die.
#END_COMMENT

COMMAND SOUTH
AtLocation [north of basilisk's den]
IsSomeWhere [basilisk - north]
IsCarrying [metal plate]
GoToRoom [passage near basilisk's den]
SwapLocations [petrified basilisk - north] [basilisk - north]
SwapLocations [petrified basilisk - south] [basilisk - south]
PrintMessage [PETRIFY.SELF]
BlankLine
DoneWithTurn
END_COMMAND

COMMAND SOUTH
AtLocation [north of basilisk's den]
IsSomeWhere [basilisk - north]
NOT IsCarrying [metal plate]
GoToRoom [Dead]
PrintMessage [PETRIFY.ME]
BlankLine
KillPlayer
DoneWithTurn
END_COMMAND

COMMAND SOUTH
AtLocation [peelgrunt room]
Present [walk-in safe - open]
PrintMessage [SAFE.BLOCKS]
DoneWithTurn
END_COMMAND

COMMAND SOUTH
AtLocation [crack 2]
Present [green slime]
PrintMessage [SLIMED]
KillPlayer
GoToRoom [Dead]
BlankLine
DoneWithTurn
END_COMMAND

MESSAGE [SLIMED]
As you enter into the passage, you are forced to brush up against some of the
green slime.  Instantly it flows down and covers your body, and rapidly
digests away all of your flesh.
END_MESSAGE

#COMMENT ------- EAST

COMMAND EAST
AtLocation [inside Rabbit's Warren]
FlagON [Has used compass in Rabbit's Warren]
PrintMessage [find way out]
GoToRoom [windy cavern]
BlankLine
DoneWithTurn
END_COMMAND

COMMAND EAST
AtLocation [west side of fissure]
NOT InRoom [crystal bridge 2]
PrintMessage [no way across]
DoneWithTurn
END_COMMAND

COMMAND EAST
AtLocation [alcove]
IsCarryingNothing
GoToRoom [plover room]
PrintMessage [squeeze through tunnel]
BlankLine
DoneWithTurn
END_COMMAND

COMMAND EAST
AtLocation [alcove]
IsCarryingSomething
PrintMessage [something won't fit]
DoneWithTurn
END_COMMAND

COMMAND EAST
AtLocation [witt's end]
Chance 20
PrintMessage [find way out]
BlankLine
GoToRoom [anteroom]
BlankLine
DoneWithTurn
END_COMMAND

MESSAGE [find way out]
Finally, you discover a small tunnel leading east.  You just manage to fit
through and find yourself ...
END_MESSAGE

COMMAND EAST
AtLocation [translucent room]
FlagOFF [Goblins have appeared]
TurnFlagON [Goblins have appeared]
TurnCounterON [Goblin counter]
PrintMessage [Goblins appear]
PutInCurrentRoom [gooseberry goblins]
DoneWithTurn
END_COMMAND

COMMAND EAST
AtLocation [ice room]
GoToRoom [bottom of icy slide]
PrintMessage [OOF]
BlankLine
DoneWithTurn
END_COMMAND

COMMAND EAST
AtLocation [coral passage]
CounterEquals [Quicksand is hard -- counter] 0
OR
IsCarrying [giant clam]
OR
IsCarrying [giant oyster]
PrintMessage [SCHLURP]
GoToRoom [Dead]
BlankLine
KillPlayer
DoneWithTurn
END_COMMAND

COMMAND EAST
AtLocation [coral passage]
CounterGT [Quicksand is hard -- counter] 0
NOT IsCarrying [giant clam]
NOT IsCarrying [giant oyster]
GoToRoom [bend in coral passage]
BlankLine
DoneWithTurn
END_COMMAND

MESSAGE [SCHLURP]
Hmmmm..  This sand is rather soft, and you're sinking in a little... In fact
you're sinking in a lot!   Oh, no - it's QUICKSAND!!  HELP!! HELP!!! HELP!!
>glub<   >glub<    >glub<     >blurp<
END_MESSAGE

#COMMENT ------- WEST

COMMAND WEST
AtLocation [R646  Graveyard]
OR
AtLocation [R647  Graveyard]
OR
AtLocation [R648  The Barrow]
BlankLine
PrintMessage "You sink down into the treacherous marsh...down...down...>GLOOP!<"
GoToROOM [Dead]
BlankLine
DoneWithTurn
END_COMMAND

COMMAND WEST
AtLocation [east bank of fissure]
NOT InRoom [crystal bridge]
PrintMessage [no way across]
DoneWithTurn
END_COMMAND

COMMAND WEST
InRoom [green snake]
PrintMessage [that's unsafe]
DoneWithTurn
END_COMMAND

COMMAND WEST
AtLocation [plover room]
IsCarrying [egg-sized emerald]
LoadWeightEquals [treasure weight] ;only carrying emerald
PrintMessage [squeeze through tunnel]
GoToRoom [alcove]
BlankLine
DoneWithTurn
END_COMMAND

COMMAND WEST
AtLocation [plover room]
IsCarryingNothing
GoToRoom [alcove]
PrintMessage [squeeze through tunnel]
BlankLine
DoneWithTurn
END_COMMAND

COMMAND WEST
AtLocation [plover room]
IsCarryingSomething
PrintMessage [something won't fit]
DoneWithTurn
END_COMMAND

COMMAND WEST
AtLocation [bend in coral passage]
CounterEquals [Quicksand is hard -- counter] 0
OR
IsCarrying [giant clam]
OR
IsCarrying [giant oyster]
PrintMessage [SCHLURP]
GoToRoom [Dead]
BlankLine
KillPlayer
DoneWithTurn
END_COMMAND

COMMAND WEST
AtLocation [bend in coral passage]
CounterGT [Quicksand is hard -- counter] 0
NOT IsCarrying [giant clam]
NOT IsCarrying [giant oyster]
GoToRoom [coral passage]
BlankLine
DoneWithTurn
END_COMMAND

#COMMENT ------- SOUTHWEST

COMMAND SOUTHWEST
FlagOFF [eggs returned] ; Player has not gotten eggs back via magic words
FlagOFF [cave closing] ;Cave still open
Present [phony troll]
AtLocation [NE chasm] ;one side of troll bridge
GoToRoom [SW chasm] ;other side
PutInCurrentRoom [phony troll]
PutInCurrentRoom [rickety bridge]
PrintMessage [scamper across]
DoneWithTurn
END_COMMAND

COMMAND SOUTHWEST
FlagOFF [eggs returned] ; Player has not gotten eggs back via magic words
FlagOFF [cave closing] ;Cave still open
AtLocation [NE chasm] ;one side of troll bridge
InRoom [rickety bridge] ;troll bridge
NOT InRoom [burly troll]
FlagOFF [troll eliminated] ;troll can now appear when you try to cross bridge
PutInCurrentRoom [burly troll]
PrintMessage [troll appears]
DoneWithTurn
END_COMMAND

COMMAND SOUTHWEST
FlagON [eggs returned] ; Player has got eggs back via magic words
FlagOFF [cave closing] ;Cave still open
AtLocation [NE chasm] ;one side of troll bridge
InRoom [rickety bridge] ;troll bridge
NOT InRoom [burly troll]
PrintMessage [REVENGE]
TurnFlagOFF [bear following]
SendToRoom [bridge wreckage] [SW chasm]
GoToRoom [bottom of the pit]
MinusScore 10
KillPlayer
DoneWithTurn
END_COMMAND

MESSAGE [REVENGE]
As you reach the middle of the bridge, the troll appears from out of the
tunnel behind you, wearing a large backpack.  "So, Mister Magician," he
shouts, "you like to use magic to steal back my hard-earned toll?  Let's see
how you like a little of MY magic!!"  With that, he aims a tube running from
the backpack directly at the bridge and pulls a trigger.  A spout of magical
fire roars out and incinerates the bridge supports, causing the bridge to sway
giddily and collapse into the chasm.  You plunge down to your death.
END_MESSAGE

COMMAND SOUTHWEST
FlagOFF [eggs returned] ; Player has not gotten eggs back via magic words
FlagOFF [cave closing] ;Cave still open
AtLocation [NE chasm] ;one side of troll bridge
InRoom [rickety bridge]
InRoom [burly troll]
PrintMessage [troll refuses]
DoneWithTurn
END_COMMAND

COMMAND SOUTHWEST
InRoom [rickety bridge]
FlagON [bear following]
PrintMessage [bridge buckles under bear]
Destroy [rickety bridge]
Destroy [burly troll]
Destroy [phony troll]
Destroy [contented bear]
TurnFlagOFF [bear following]
SendToRoom [bridge wreckage] [SW chasm]
GoToRoom [bottom of the pit]
MinusScore 10
SendToRoom [OFF lamp] [inside building]
Destroy [ON lamp]
KillPlayer
DoneWithTurn
END_COMMAND

COMMAND SOUTHWEST
AtLocation [pink foggy room]
Present [pink faint glow]
GoToRoom [fog-filled room by cairn]
DoneWithTurn
END_COMMAND

#COMMENT ------- NORTHWEST

COMMAND NORTHWEST
AtLocation [N end of Stone Faces]
Present [Statue of minotaur]
GoToRoom [S end of fog-filled room]
DoneWithTurn
END_COMMAND

#COMMENT ------- NORTHEAST

COMMAND NORTHEAST
AtLocation [N end of Stone Faces]
Present [Statue of minotaur]
GoToRoom [Banshee passage]
DoneWithTurn
END_COMMAND

COMMAND NORTHEAST
FlagOFF [eggs returned] ; Player has not gotten eggs back via magic words
FlagOFF [cave closing]
AtLocation [SW chasm] ;one side of troll bridge
InRoom [rickety bridge] ;troll bridge
FlagOFF [troll eliminated] ;troll can now appear when you try to cross bridge
NOT InRoom [burly troll]
PutInCurrentRoom [burly troll]
PrintMessage [troll appears]
DoneWithTurn
END_COMMAND

COMMAND NORTHEAST
FlagOFF [eggs returned] ; Player has not gotten eggs back via magic words
FlagOFF [cave closing]
AtLocation [SW chasm] ;one side of troll bridge
InRoom [rickety bridge] ;troll bridge
InRoom [burly troll]
PrintMessage [troll refuses]
DoneWithTurn
END_COMMAND

COMMAND NORTHEAST
FlagOFF [cave closing] ;Cave still open
AtLocation [SW chasm] ;one side of troll bridge
InRoom [bridge wreckage]
PrintMessage [no longer any way across]
DoneWithTurn
END_COMMAND

COMMAND NORTHEAST
FlagON [eggs returned] ; Player has got eggs back via magic words
FlagOFF [cave closing] ;Cave still open
AtLocation [SW chasm] ;one side of troll bridge
NOT InRoom [burly troll]
PrintMessage [REVENGE]
TurnFlagOFF [bear following]
SendToRoom [bridge wreckage] [SW chasm]
GoToRoom [bottom of the pit]
MinusScore 10
KillPlayer
DoneWithTurn
END_COMMAND

COMMAND NORTHEAST
FlagOFF [eggs returned] ; Player has not gotten eggs back via magic words
FlagOFF [cave closing] ;Cave still open
Present [phony troll]
AtLocation [SW chasm] ;one side of troll bridge
GoToRoom [NE chasm] ;other side
PutInCurrentRoom [phony troll]
PutInCurrentRoom [rickety bridge]
PrintMessage [scamper across]
DoneWithTurn
END_COMMAND

#COMMENT ------- UP

COMMAND UP
AtLocation [R28  Cavern]
IsCarrying [Long Ladder]
PrintMessage [You are trapped]
DoneWithTurn
END_COMMAND

MESSAGE [You are trapped]
You climb the stairs only to discover that someone has closed the coffin lid.
You push and push, but you can't budge it.  You are trapped!
END_MESSAGE

COMMAND UP
AtLocation [R642  Stairs]
BlankLine
PrintMessage "The stairs give way and you topple down...down...>SPLAT!<..."
BlankLine
GoToROOM [Dead]
DoneWithTurn
END_COMMAND

COMMAND UP
AtLocation [Southern end of long hall]
IsSomeWhere [open vault] ; vault is open above
GoToRoom [inside building]
PrintMessage [You climb the stairs]
DoneWithTurn
END_COMMAND

COMMAND UP
AtLocation [Southern end of long hall]
NOT IsSomeWhere [open vault] ; vault is NOT open above
PrintMessage [You can't climb the stairs]
DoneWithTurn
END_COMMAND

COMMAND UP
AtLocation [Bottom of Hole]
PrintMessage "You keep slipping back down.  After a while, you give up."
DoneWithTurn
END_COMMAND

COMMAND UP
AtLocation [Ladder Top]
PrintMessage "The pole is too slippery to climb -- even with your tennis shoes."
DoneWithTurn
END_COMMAND

MESSAGE [Starting Up]
You step on to the stairs and begin to climb up.  It seems like a very easy
climb and you don't even have to pause to rest.  You notice that it seems to
get cooler as you climb.  Finally, you reach the top of the stairs almost
refreshed for your little bout of exercise.  (One of the wonders of Adventure
Games is that they need not be logical, consistent or fair.  Sometimes, this
works to the player's advantage -- like now.)

END_MESSAGE

COMMAND UP
AtLocation [Gates of Hell]
PrintMessage [Starting Up]
GoToRoom [circular Room]
BlankLine
DoneWithTurn
END_COMMAND

COMMAND UP
AtLocation [bedquilt room]
PrintMessage [back where you started]
DoneWithTurn
END_COMMAND

COMMAND UP
AtLocation [hall of mists]
IsCarrying [gold nugget]
PrintMessage [can't be serious]
PrintMessage "The dome is unclimbable!"
DoneWithTurn
END_COMMAND

COMMAND UP
AtLocation [below grate]
IsOpen [iron grate]
GoToRoom [depression outside grate]
DoneWithTurn
END_COMMAND

COMMAND UP
AtLocation [below grate]
IsClosed [iron grate]
PrintMessage [this exit closed]
DoneWithTurn
END_COMMAND

COMMAND UP
AtLocation [room with vaulted ceiling]
Present [walk-in safe - open]
PrintMessage [SAFE.BLOCKS]
DoneWithTurn
END_COMMAND

COMMAND UP
AtLocation [bottom of icy slide]
PrintMessage [SLIDE.SLIPPERY]
DoneWithTurn
END_COMMAND

#COMMENT ------- DOWN

COMMAND DOWN
AtLocation [R644  Top of Tower]
BlankLine
PrintMessage "The stairs give way and you topple down...down...>SPLAT!<..."
BlankLine
GoToROOM [Dead]
DoneWithTurn
END_COMMAND

COMMAND DOWN
AtLocation [inside building]
IsSomeWhere [open vault] ; vault is open above
GoToRoom [Southern end of long hall]
PrintMessage [You climb down the stairs]
BlankLine
DoneWithTurn
END_COMMAND

MESSAGE [You climb down the stairs]
You climb down the steep stairway in the safe.
END_MESSAGE

COMMAND DOWN
AtLocation [on the beach]
Present [Gigantic Hole]
FlagOFF [Has dug in bottom of hole]
GoToRoom [Bottom of hole]
PrintMessage [You slip down the sandy side of the hole]
BlankLine
DoneWithTurn
END_COMMAND

COMMAND DOWN
AtLocation [on the beach]
Present [Gigantic Hole]
FlagON [Has dug in bottom of hole]
GoToRoom [Shaft Room]
PrintMessage [You slip down the sandy side of the hole]
BlankLine
DoneWithTurn
END_COMMAND

COMMAND DOWN
Present [Small Hole]
OR
Present [Large Hole]
PrintMessage
You climb down into the hole -- then with great difficulty back up.
End_Message
DoneWithTurn
END_COMMAND

COMMAND DOWN
AtLocation [Shaft Room]
NOT IsWearing [Tennis Shoes]
GoToRoom [Dead]
PrintMessage "The pole is too slippery.  You lose your grip and fall...."
BlankLine
DoneWithTurn
END_COMMAND

COMMAND DOWN
AtLocation [circular Room]
PrintMessage [Start down]
BlankLine
END_COMMAND

MESSAGE [Start Down]
You step on to the staircase and begin to climb down.  You climb down for a
long, long time.  You are getting warmer and quite tired.  You pause to rest.
END_MESSAGE

COMMAND DOWN
AtLocation [1st Level]
PrintMessage [Going down]
BlankLine
END_COMMAND

MESSAGE [Going Down]
You resume your climb down.  Down and down you go, round and round you go, in
a spin, lovin the spin your in, under that old black magic ... called love,
etc....

It is quite warm here.  Once again, you pause to rest.
END_MESSAGE

COMMAND DOWN
AtLocation [2nd Level]
OR
AtLocation [3rd Level]
PrintMessage [More Going down]
BlankLine
END_COMMAND

MESSAGE [More Going Down]
You resume your climb down.  It is really getting hot here.  Once again, you
pause to rest.
END_MESSAGE

COMMAND DOWN
AtLocation [4th Level]
PrintMessage [Final Going down]
BlankLine
END_COMMAND

MESSAGE [Final Going Down]
With the end in sight, you make one last effort to finish these !@#$%^&ing
stairs.  You can hardly stand the heat.  Finally, you reach the bottom.
END_MESSAGE

COMMAND DOWN
InRoom [green snake]
PrintMessage [that's unsafe]
DoneWithTurn
END_COMMAND

MESSAGE [that's unsafe]
Going that way would require getting VERY close to the snake!  I'm sorry, but
I just can't allow it.  For your own good, you can't go that way.
END_MESSAGE

COMMAND DOWN
InRoom [gigantic beanstalk top]
PrintMessage [climb down beanstalk]
GoToRoom [west pit]
BlankLine
DoneWithTurn
END_COMMAND

COMMAND DOWN
AtLocation [depression outside grate]
IsOpen [iron grate]
GoToRoom [below grate]
DoneWithTurn
END_COMMAND

COMMAND DOWN
AtLocation [steep slide in lava tube]
GoToRoom [S end of fog-filled room]
PrintMessage [OOF]
BlankLine
DoneWithTurn
END_COMMAND

MESSAGE [OOF]
Wheeeeeeeeeeeeeeee.......   >oof<
 
That was fun!
END_MESSAGE

COMMAND DOWN
AtLocation [ice room]
GoToRoom [bottom of icy slide]
PrintMessage [OOF]
BlankLine
DoneWithTurn
END_COMMAND

COMMAND DOWN
AtLocation [cavern with waterfall]
PrintMessage [WHIRLPOOL?]
PromptForNO
PrintMessage "Smart (yet cowardly) move!"
DoneWithTurn
END_COMMAND

COMMAND DOWN
AtLocation [cavern with waterfall]
#COMMENT -- going into whirlpool
FlagON [Player is very strong] ; player will not lose his stuff
IsCarrying [ON Lamp]
PrintMessage [FLOW.DOWN]
GoToRoom  [N end of reservoir]
PrintMessage [WHIRL.LAND]
PlusScore 15
BlankLine
DoneWithTurn
END_COMMAND

COMMAND DOWN
AtLocation [cavern with waterfall]
#COMMENT -- going into whirlpool
FlagON [Player is very strong] ; player will not lose his stuff
NOT IsCarrying [ON Lamp]
PrintMessage [FLOW.DARK]
GoToRoom  [N end of reservoir]
PrintMessage [WHIRL.LAND]
PlusScore 15
BlankLine
DoneWithTurn
END_COMMAND

COMMAND DOWN
AtLocation [cavern with waterfall]
#COMMENT -- going into whirlpool
FlagOFF [Player is very strong] ; player will lose his stuff
IsCarrying [ON Lamp]
SendAllToRoom [nowhere]
GetIt [ON Lamp] ; Lamp is not lost
PrintMessage [FLOW.RIP]
GoToRoom  [N end of reservoir]
BlankLine
PrintMessage [WHIRL.LAND]
BlankLine
PlusScore 5
DoneWithTurn
END_COMMAND

COMMAND DOWN
AtLocation [cavern with waterfall]
#COMMENT -- going into whirlpool
FlagOFF [Player is very strong] ; player will lose his stuff
NOT IsCarrying [ON Lamp]
SendAllToRoom [nowhere]
PrintMessage [FLOW.D.RIP]
GoToRoom  [N end of reservoir]
BlankLine
PrintMessage [WHIRL.LAND]
BlankLine
PlusScore 5
DoneWithTurn
END_COMMAND

MESSAGE [WHIRLPOOL?]
Into the whirlpool??
END_MESSAGE

MESSAGE [FLOW.DOWN]
You plunge into the water and are sucked down by the whirlpool.
END_MESSAGE

MESSAGE [FLOW.RIP]
You plunge into the water and are sucked down by the whirlpool.  The current
is incredibly strong, and you barely manage to hold onto your lamp; everything
else is pulled from your grasp and is lost in the swirling waters.
END_MESSAGE

MESSAGE [FLOW.DARK]
You plunge into the water and are sucked down by the whirlpool into pitch
darkness.
END_MESSAGE

MESSAGE [FLOW.D.RIP]
You plunge into the water and are sucked down by the whirlpool into pitch
darkness.  The current is incredibly strong, and everything that you are
carrying is ripped from your grasp and is lost in the swirling waters.
END_MESSAGE

MESSAGE [WHIRL.LAND]
The swirling waters deposit you, not ungently, on solid ground.
END_MESSAGE
 
#COMMENT ------- EXIT

COMMAND EXIT
AtLocation [translucent room]
FlagOFF [Goblins have appeared]
TurnFlagON [Goblins have appeared]
TurnCounterON [Goblin counter]
PrintMessage [Goblins appear]
PutInCurrentRoom [gooseberry goblins]
DoneWithTurn
END_COMMAND

COMMAND EXIT
AtLocation [room with vaulted ceiling]
Present [walk-in safe - open]
PrintMessage [SAFE.BLOCKS]
DoneWithTurn
END_COMMAND

COMMAND EXIT
AtLocation [peelgrunt room]
Present [walk-in safe - open]
PrintMessage [SAFE.BLOCKS]
DoneWithTurn
END_COMMAND

#COMMENT ------- ENTER

COMMAND ENTER BUILDING
AtLocation [end of road]
GoToRoom [inside building]
DoneWithTurn
END_COMMAND

COMMAND ENTER COFFIN
InRoom [open coffin]
GoToRoom [R28  Cavern]
PrintMessage [You climb down the steps in the open coffin]
BlankLine
DoneWithTurn
END_COMMAND

COMMAND ENTER DUCT
AtLocation [air-conditioned room]
Present [air-conditioning grate]
GoToRoom [At Turn In Duct]
BlankLine
DoneWithTurn
END_COMMAND

COMMAND ENTER
AtLocation [inside building]
IsSomeWhere [open vault] ; vault is open above
GoToRoom [Southern end of long hall]
PrintMessage [You climb down the stairs]
BlankLine
DoneWithTurn
END_COMMAND

COMMAND ENTER
AtLocation [depression outside grate]
IsOpen [iron grate]
GoToRoom [below grate]
BlankLine
DoneWithTurn
END_COMMAND

COMMAND ENTER
AtLocation [room with vaulted ceiling]
Present [walk-in safe - open]
GoToRoom [in the safe]
PrintMessage [ENTER.SAFE]
BlankLine
DoneWithTurn
END_COMMAND

COMMAND ENTER
AtLocation [room with vaulted ceiling]
NOT Present [walk-in safe - open]
PrintMessage [CANTENTERSAFE]
DoneWithTurn
END_COMMAND

MESSAGE [ENTER.SAFE]
You duck your head as you enter the walk-in safe.
END_MESSAGE

MESSAGE [CANTENTERSAFE]
The safe's door is closed, and you can't get in!
END_MESSAGE

COMMAND ENTER
AtLocation [peelgrunt room]
Present [walk-in safe - open]
GoToRoom [in the safe]
PrintMessage [ENTER.SAFE]
BlankLine
DoneWithTurn
END_COMMAND

COMMAND ENTER
AtLocation [peelgrunt room]
NOT Present [walk-in safe - open]
PrintMessage [CANTENTERSAFE]
DoneWithTurn
END_COMMAND

;MAGIC words

#COMMENT -- MELENKURION

COMMAND MELENKURION
AtLocation [cylindrical chamber] ;playing "end game"
TurnFlagOFF [Has just said 'ZORTON'] ; i.e., "wrong" secret word
END_COMMAND

#COMMENT
From the "N end of Stone Faces", the player must say the magic word MELENKURION
to cause the wall to crumble and three new passages to appear.
#END_COMMENT

COMMAND MELENKURION
AtLocation [N end of Stone Faces]
NOT Present [Statue of minotaur]
PutInCurrentRoom [Statue of minotaur]
PrintMessage [CRUMBLE]
PlusScore 15
DoneWithTurn
END_COMMAND

MESSAGE [CRUMBLE]
Rock silently crumbles off of the wall in front of you, revealing dark
passages leading northwest, north, and northeast.
END_MESSAGE

MESSAGE [Strange -- nothing happened!]

Strange!  Nothing happened.  At least, nothing obvious happened.
END_MESSAGE

COMMAND MELENKURION
Present [walk-in safe - closed]
PrintMessage [SAFE.FUSES]
SetVariableTo [Status of Safe] 2 ; safe is now fused shut
TurnCounterON [Rover counter - to all you "Prisoner" fans]
#COMMENT Rover released if wrong password given
DoneWithTurn
END_COMMAND

COMMAND MELENKURION
PrintMessage [Strange -- nothing happened!]
DoneWithTurn
END_COMMAND

#COMMENT -- ZORTON

#COMMENT
If you give the magic word ZORTON, the safe will open.  Any other magic world
(i.e., PLUGH, XYZZY, PLOVER, etc.) will cause the safe to be fused shut and
Rover (for all you "Prisoner" fans) to be released.
#END_COMMENT

COMMAND ZORTON
Present [walk-in safe - closed]
SetVariableTo [Status of Safe] 1 ; safe is now open
PrintMessage [SAFE.OPENS]
DoneWithTurn
END_COMMAND

COMMAND ZORTON
AtLocation [cylindrical chamber] ;playing "end game"
TurnFlagON [Has just said 'ZORTON']
END_COMMAND

COMMAND ZORTON
PrintMessage [Strange -- nothing happened!]
DoneWithTurn
END_COMMAND

#COMMENT -- THURB

COMMAND THURB
AtLocation [cylindrical chamber] ;playing "end game"
TurnFlagOFF [Has just said 'ZORTON'] ; i.e., "wrong" secret word
END_COMMAND

COMMAND THURB
Present [walk-in safe - closed]
PrintMessage [SAFE.FUSES]
SetVariableTo [Status of Safe] 2 ; safe is now fused shut
TurnCounterON [Rover counter - to all you "Prisoner" fans]
#COMMENT Rover released if wrong password given
DoneWithTurn
END_COMMAND

COMMAND THURB
AtLocation [Ice Cave "MAZE" room]
OR
AtLocation [small icy chamber]
GoToRoom [ice room]
PrintMessage [FOOF]
BlankLine
DoneWithTurn
END_COMMAND

COMMAND THURB
PrintMessage [Strange -- nothing happened!]
DoneWithTurn
END_COMMAND

;TURBO

COMMAND TURBO
AtLocation [cylindrical chamber] ;playing "end game"
TurnFlagOFF [Has just said 'ZORTON'] ; i.e., "wrong" secret word
END_COMMAND

COMMAND TURBO
Present [walk-in safe - closed]
PrintMessage [SAFE.FUSES]
SetVariableTo [Status of Safe] 2 ; safe is now fused shut
TurnCounterON [Rover counter - to all you "Prisoner" fans]
#COMMENT Rover released if wrong password given
DoneWithTurn
END_COMMAND

COMMAND TURBO
FlagOFF [cave closing] ;cave open
FlagON [secret word given] ;programmer has given secret word
FlagOFF [programmer angry] ;programmer not angry
AtLocation [programmer's den]
PrintMessage [FOOF]
GoToRoom [inside building]
BlankLine
DoneWithTurn
END_COMMAND

COMMAND TURBO
FlagOFF [cave closing] ;cave open
FlagON [secret word given] ;programmer has given secret word
FlagOFF [programmer angry] ;programmer not angry
AtLocation [inside building]
GoToRoom [programmer's den]
PrintMessage [FOOF]
BlankLine
DoneWithTurn
END_COMMAND

COMMAND TURBO
FlagON [programmer angry]
PrintMessage [magic word fails]
DoneWithTurn
END_COMMAND

COMMAND TURBO
PrintMessage [doesn't work here]
DoneWithTurn
END_COMMAND

;XYZZY

COMMAND XYZZY
AtLocation [cylindrical chamber] ;playing "end game"
FlagON [Has just said 'ZORTON'] ; i.e., "right" previous secret word
PrintMessage [FOOF]
GoToRoom [end of road] ; gets out of cylindrical chamber
BlankLine
DoneWithTurn
END_COMMAND

COMMAND XYZZY
Present [walk-in safe - closed]
PrintMessage [SAFE.FUSES]
SetVariableTo [Status of Safe] 2 ; safe is now fused shut
TurnCounterON [Rover counter - to all you "Prisoner" fans]
#COMMENT Rover released if wrong password given
DoneWithTurn
END_COMMAND

COMMAND XYZZY
FlagOFF [cave closing] ;cave open
AtLocation [debris room] ;XYZZY area
PrintMessage [FOOF]
GoToRoom [inside building]
BlankLine
DoneWithTurn
END_COMMAND

COMMAND XYZZY
FlagOFF [cave closing] ;cave open
AtLocation [inside building]
PrintMessage [FOOF]
GoToRoom [debris room] ;XYZZY area
BlankLine
DoneWithTurn
END_COMMAND

COMMAND XYZZY
PrintMessage [doesn't work here]
DoneWithTurn
END_COMMAND

#COMMENT -- PHUGGG

COMMAND PHUGGG
AtLocation [cylindrical chamber] ;playing "end game"
TurnFlagOFF [Has just said 'ZORTON'] ; i.e., "wrong" secret word
END_COMMAND

COMMAND PHUGGG
Present [walk-in safe - closed]
PrintMessage [SAFE.FUSES]
SetVariableTo [Status of Safe] 2 ; safe is now fused shut
TurnCounterON [Rover counter - to all you "Prisoner" fans]
#COMMENT Rover released if wrong password given
DoneWithTurn
END_COMMAND

COMMAND PHUGGG
AtLocationLT [hall of mists]
OR
AtLocationGT [cylindrical chamber] ;most of cave area
PrintMessage [Strange -- nothing happened!]
DoneWithTurn
END_MESSAGE

COMMAND PHUGGG
Chance 85
FlagON [Water here]
OR
Present [water bottle]
PrintMessage [Strange -- nothing happened!]
DoneWithTurn
END_MESSAGE

COMMAND PHUGGG
Chance 90
FlagON [Water here]
OR
Present [water bottle]
PrintMessage [JELLYFISH]
GoToRoom [Dead]
BlankLine
KillPlayer
DoneWithTurn
END_MESSAGE

MESSAGE [JELLYFISH]

        >splurch!<
 
Oh, no!  You've turned yourself into a jellyfish, and fallen to the ground and
been splattered far and wide!  Well, that certainly wasn't very smart!!!  You
were warned not to use the word 'phuggg' near water!
END_MESSAGE

COMMAND PHUGGG
FlagON [Water here]
OR
Present [water bottle]
PrintMessage [CAVE.DESTROYED]
GoToRoom [Dead]
BlankLine
KillPlayer
DoneWithTurn
END_MESSAGE

MESSAGE [CAVE.DESTROYED]
The ground begins to shudder ominously, and the very cave walls around you
begin to creak and groan!  A sulphurious stench fills the air!
 
With an incredible lurch, the ground begins to dance and ripple as though it
were liquid!  You are thrown off of your feet and tossed violently up and
down!  The cave walls begin to crumble and split from the stress!
 
There is a terrible ROAR of rending rock!!  The cave ceiling splits, and rocks
plunge down and smash your lower body to a gooey paste!!
 
There is a violent blast in the distance!  Steam and smoke drift into view
through the rents in the walls, and furiously-bubbling red-hot lava flows in
and surrounds you.  The cave ceiling disintegrates in an incredible orgy of
grinding destruction, and the cave walls fall and are pounded into fine dust.
 
You are lying, badly mangled, on a small rock island in a sea of molten lava.
Above you, the sky is faintly visible through a thick pall of smoke and steam.
A short distance to the north, the remains of a well-house are sinking slowly
into the bubbling ooze.
 
There is a distant, sourceless screech of incredible anguish!  With a sharp
>poof< and a small puff of orange smoke, a bent and bearded elf appears.  He
is dressed in working clothes, and has a name-tag marked "Ralph" on his shirt.
"You blithering idiot!" he storms. "You were warned quite clearly not to use
the word 'phuggg' near water!!  I hadn't gotten all of the bugs out of it yet,
and now your incredible incompetence has totally destroyed Humongous Cave!!
Do you have the faintest scintilla of an iota of an understanding of how much
work I'm going to have to do to get the cave rebuilt?!?  I'll have to go all
the way to Peking for another dragon, and I'll have to convince the Goblin's
Union to send me another team of gooseberry goblins; I'll have to sub-contract
the building of the volcano out to the local totrugs, and worst of all I'll
have to go through eight months of paperwork and red tape to file a new
Environmental Impact statement!!  All because you couldn't follow directions,
you purblind and meatbrained moron!  I'm rescinding all of your game points
and throwing you out!  Out!   OUT!   GET OUT!   @#$&'@!!!"
END_MESSAGE
 
COMMAND PHUGGG
Present [dwarf's axe]
Destroy [dwarf's axe]
PrintMessage [ZOT.AXE]
DoneWithTurn
END_MESSAGE

MESSAGE [ZOT.AXE]
Your axe glows bright orange and fades into nothingness.
END_MESSAGE

COMMAND PHUGGG
Present [singing sword]
Destroy [singing sword]
PrintMessage [ZOT.SWORD]
DoneWithTurn
END_MESSAGE

MESSAGE [ZOT.SWORD]
Your sword jumps into the air, chants several bars of the "Volga Boatman",
shoots off several fitful blue sparks, and disintegrates.
END_MESSAGE

COMMAND PHUGGG
FlagON [Dwarf here]
Chance 70
RandomMessage [IT.WORKED 1] [IT.WORKED 5]
Destroy [little dwarf]
Destroy [threatening dwarf]
DoneWithTurn
END_COMMAND

MESSAGE [IT.WORKED 1]
A clear, liquid chime sounds in midair.  A large, four-clawed hand reaches out
of the ground, grabs the dwarf, and pulls it down into nothingness.
END_MESSAGE

#COMMENT  Turn off warnings -- this message is not directly referenced
#OPTIONS :-Warnings

MESSAGE [IT.WORKED 2]
A clear, liquid chime sounds in midair.  A long green tentacle covered with
sucker disks reaches out from nowhere, grabs the dwarf, and pulls it back to
wherever it came from.
END_MESSAGE

MESSAGE [IT.WORKED 3]
There is a sharp sizzling sound.  The dwarf is engulfed in a wave of fire that
appears from nowhere, and is completely incinerated; the flames then vanish
into nothingness again.
END_MESSAGE

MESSAGE [IT.WORKED 4]
There is a sharp whistling sound from nowhere.  The dwarf shudders and turns
into a moth, which then flies away.
END_MESSAGE

#COMMENT Return "Warnings" to its previous state
#OPTIONS =Warnings

MESSAGE [IT.WORKED 5]
There is a sharp whistling sound from nowhere.  The dwarf stiffens, shudders,
and melts down into a large puddle of soggy goo that quickly soaks into the
ground and vanishes.
END_MESSAGE

COMMAND PHUGGG
FlagON [Dwarf here]
RandomMessage [IT.DIDNT.WORK 1] [IT.DIDNT.WORK 5]
GoToRoom [Dead]
BlankLine
KillPlayer
DoneWithTurn
END_COMMAND

MESSAGE [IT.DIDNT.WORK 1]
A clear, liquid chime sounds in midair.  A large, four-clawed foot appears in
midair and stomps violently downward, missing the dwarf but thoroughly
squashing you.
END_MESSAGE

#COMMENT  Turn off warnings -- this message is not directly referenced
#OPTIONS :-Warnings

MESSAGE [IT.DIDNT.WORK 2]
A clear, liquid chime sounds in midair.  A large and very toothy mouth appears
in midair and chomps ferociously.  The dwarf manages to evade it, but it bites
you in half.
END_MESSAGE

MESSAGE [IT.DIDNT.WORK 3]
There is a sharp sizzling sound.  A ball of fire roars out of nowhere, misses
the dwarf, bounces off of a wall, and incinerates you.
END_MESSAGE

MESSAGE [IT.DIDNT.WORK 4]
There is a sharp crackling sound from the air above you.  The dwarf shudders
and turns into a saber-toothed tiger, which attacks and kills you in short
order.
END_MESSAGE

#COMMENT Return "Warnings" to its previous state
#OPTIONS =Warnings

MESSAGE [IT.DIDNT.WORK 5]
There is a sharp crackling sound from the air above you.  The dwarf stiffen,
falls to the ground, and melts into a large puddle of soggy goo.  The goo
twitches a few times and then flows at you with incredible speed; it attacks
and strangles you with little difficulty.
END_MESSAGE

COMMAND PHUGGG
PrintMessage [Strange -- nothing happened!]
DoneWithTurn
END_MESSAGE

#COMMENT -- SAMOHT

COMMAND SAMOHT
AtLocation [cylindrical chamber] ;playing "end game"
TurnFlagOFF [Has just said 'ZORTON'] ; i.e., "wrong" secret word
END_COMMAND

COMMAND SAMOHT
Present [walk-in safe - closed]
PrintMessage [SAFE.FUSES]
SetVariableTo [Status of Safe] 2 ; safe is now fused shut
TurnCounterON [Rover counter - to all you "Prisoner" fans]
#COMMENT Rover released if wrong password given
DoneWithTurn
END_COMMAND

COMMAND SAMOHT
PrintMessage [Strange -- nothing happened!]
DoneWithTurn
END_MESSAGE

#COMMENT -- NOSIDE

COMMAND NOSIDE
AtLocation [cylindrical chamber] ;playing "end game"
TurnFlagOFF [Has just said 'ZORTON'] ; i.e., "wrong" secret word
END_COMMAND

COMMAND NOSIDE SAMOHT
NOT IsCarrying [ON lamp]
PrintMessage [Strange -- nothing happened!]
DoneWithTurn
END_COMMAND

COMMAND NOSIDE SAMOHT
IsCarrying [ON lamp]
VariableGT [battery life] 25
PrintMessage [FZAP]
GoToRoom [Dead]
BlankLine
KillPlayer
DoneWithTurn
END_COMMAND

COMMAND NOSIDE SAMOHT
IsCarrying [ON lamp]
AddToVariable [battery life] 500
PrintMessage [LAMP.RECHARGED]
DoneWithTurn
END_COMMAND

MESSAGE [FZAP]
With a sharp sizzling sound, a large spark of electricity jumps out of thin
air and strikes your lamp.  The immense electrical charge flows to ground
through your body and fries you to a crisp.
END_MESSAGE

MESSAGE [LAMP.RECHARGED]
The air fills with tension, and there is a subdued crackling sound.  A blue
aura forms about your lantern, and small sparks jump from the lantern to the
ground.  The aura fades away after several seconds, and your lamp is once
again shining brightly.
END_MESSAGE

COMMAND NOSIDE
Present [walk-in safe - closed]
PrintMessage [SAFE.FUSES]
SetVariableTo [Status of Safe] 2 ; safe is now fused shut
TurnCounterON [Rover counter - to all you "Prisoner" fans]
#COMMENT Rover released if wrong password given
DoneWithTurn
END_COMMAND

COMMAND NOSIDE
PrintMessage [Strange -- nothing happened!]
DoneWithTurn
END_MESSAGE

;PLUGH

COMMAND PLUGH
AtLocation [cylindrical chamber] ;playing "end game"
TurnFlagOFF [Has just said 'ZORTON'] ; i.e., "wrong" secret word
END_COMMAND

COMMAND PLUGH
FlagOFF [cave closing] ;cave open
FlagOFF [programmer angry] ;programmer not angry
AtLocation [Y2]
PrintMessage [FOOF]
GoToRoom [inside building]
BlankLine
DoneWithTurn
END_COMMAND

COMMAND PLUGH
FlagOFF [cave closing] ;cave open
FlagOFF [programmer angry] ;programmer not angry
AtLocation [inside building]
PrintMessage [FOOF]
GoToRoom [Y2]
BlankLine
DoneWithTurn
END_COMMAND

COMMAND PLUGH
FlagON [programmer angry]
PrintMessage [magic word fails]
DoneWithTurn
END_COMMAND

COMMAND PLUGH
AtLocation [fake "Y2" room]
GoToRoom [tiny platform above volcano]
PrintMessage [FOOF]
BlankLine
DoneWithTurn
END_COMMAND

MESSAGE [FOOF]
 
        >>Foof!<<
END_MESSAGE

COMMAND PLUGH
AtLocation [tiny platform above volcano]
GoToRoom [fake "Y2" room]
PrintMessage [FOOF]
BlankLine
DoneWithTurn
END_COMMAND

COMMAND PLUGH
Present [walk-in safe - closed]
PrintMessage [SAFE.FUSES]
SetVariableTo [Status of Safe] 2 ; safe is now fused shut
TurnCounterON [Rover counter - to all you "Prisoner" fans]
#COMMENT Rover released if wrong password given
DoneWithTurn
END_COMMAND

COMMAND PLUGH
PrintMessage [doesn't work here]
DoneWithTurn
END_COMMAND

;PLOVER/BUILDING

COMMAND PLOVER
AtLocation [cylindrical chamber] ;playing "end game"
TurnFlagOFF [Has just said 'ZORTON'] ; i.e., "wrong" secret word
END_COMMAND

COMMAND PLOVER
AtLocation [fake "Y2" room]
GoToRoom [tiny platform above volcano]
PrintMessage [FOOF]
BlankLine
DoneWithTurn
END_COMMAND

COMMAND PLOVER
AtLocation [tiny platform above volcano]
GoToRoom [fake "Y2" room]
PrintMessage [FOOF]
BlankLine
DoneWithTurn
END_COMMAND

COMMAND PLOVER
Present [walk-in safe - closed]
PrintMessage [SAFE.FUSES]
SetVariableTo [Status of Safe] 2 ; safe is now fused shut
TurnCounterON [Rover counter - to all you "Prisoner" fans]
#COMMENT Rover released if wrong password given
DoneWithTurn
END_COMMAND

COMMAND PLOVER
FlagOFF [cave closing] ;cave open
AtLocation [plover room]
NOT IsCarrying [egg-sized emerald]
PrintMessage [FOOF]
GoToRoom [Y2]
BlankLine
DoneWithTurn
END_COMMAND

COMMAND PLOVER
FlagOFF [cave closing] ;cave open
AtLocation [plover room]
IsCarrying [egg-sized emerald]
DropIt [egg-sized emerald]
PrintMessage [FOOF]
GoToRoom [Y2]
BlankLine
DoneWithTurn
END_COMMAND

COMMAND PLOVER
FlagOFF [cave closing] ;cave open
AtLocation [Y2]
PrintMessage [FOOF]
GoToRoom [plover room]
BlankLine
DoneWithTurn
END_COMMAND

COMMAND PLOVER
AtLocation [dark-room]
OR
AtLocation [alcove]
GoToRoom [plover room]
DoneWithTurn
END_COMMAND

COMMAND BUILDING
AtLocation [hill by road]
OR
AtLocation [valley]
OR
AtLocation [slit]
OR
AtLocation [dead end 'J']
PrintMessage [you find yourself ...]
BlankLine
GoToRoom [end of road]
DoneWithTurn
END_COMMAND

COMMAND PLOVER
PrintMessage [doesn't work here]
DoneWithTurn
END_COMMAND

;FOREST

COMMAND FOREST
AtLocation [hill by road]
OR
AtLocation [valley]
OR
AtLocation [slit]
OR
AtLocation [depression outside grate]
OR
AtLocation [forest]
OR
AtLocation [end of road]
PrintMessage [you find yourself ...]
BlankLine
GoToRoom [forest (near road)]
DoneWithTurn
END_COMMAND

COMMAND FOREST
PrintMessage [doesn't work here]
DoneWithTurn
END_COMMAND

;SLAB/STREAMBED/SLIT

COMMAND SLAB
AtLocation [W end of twopit room]
OR
AtLocation [bedquilt room]
OR
AtLocation [north-south canyon above room]
OR
AtLocation [complex junction]
PrintMessage [you find yourself ...]
BlankLine
GoToRoom [slab room]
DoneWithTurn
END_COMMAND

COMMAND STREAMBED
AtLocation [hill by road]
OR
AtLocation [valley]
OR
AtLocation [end of road]
OR
AtLocation [depression outside grate]
OR
AtLocation [forest]
PrintMessage [you find yourself ...]
BlankLine
GoToRoom [slit] ;STREAMBED or SLIT
DoneWithTurn
END_COMMAND

COMMAND SLAB
PrintMessage [doesn't work here]
DoneWithTurn
END_COMMAND

;BEDQUILT/HILL

COMMAND BEDQUILT
AtLocation [Y2]
OR
AtLocation [dirty passage]
OR
AtLocation [dusty rock room]
OR
AtLocation [complex junction]
OR
AtLocation [large low room]
PrintMessage [you find yourself ...]
BlankLine
GoToRoom [bedquilt room]
DoneWithTurn
END_COMMAND

COMMAND HILL
AtLocation [slit]
OR
AtLocation [valley]
OR
AtLocation [end of road]
OR
AtLocation [depression outside grate]
PrintMessage [you find yourself ...]
BlankLine
GoToRoom [hill by road]
DoneWithTurn
END_COMMAND

COMMAND BEDQUILT
PrintMessage [doesn't work here]
DoneWithTurn
END_COMMAND

;ORIENTAL/VALLEY

COMMAND ORIENTAL
AtLocation [swiss cheese room]
OR
AtLocation [large low room]
OR
AtLocation [misty cavern]
PrintMessage [you find yourself ...]
BlankLine
GoToRoom [oriental room]
DoneWithTurn
END_COMMAND

COMMAND VALLEY
AtLocation [hill by road]
OR
AtLocation [end of road]
OR
AtLocation [depression outside grate]
OR
AtLocation [slit]
PrintMessage [you find yourself ...]
BlankLine
GoToRoom [valley]
DoneWithTurn
END_COMMAND

COMMAND ORIENTAL
PrintMessage [doesn't work here]
DoneWithTurn
END_COMMAND

;GIANT/BARREN

COMMAND GIANT
AtLocation [long narrow corridor]
OR
AtLocation [end of immense passage]
OR
AtLocation [cavern with waterfall]
PrintMessage [you find yourself ...]
BlankLine
GoToRoom [giant room]
DoneWithTurn
END_COMMAND

COMMAND BARREN
AtLocation [NE chasm]
OR
AtLocation [corridor]
OR
AtLocation [fork in path]
OR
AtLocation [limestone passage]
OR
AtLocation [barren entry]
PrintMessage [you find yourself ...]
BlankLine
GoToRoom [barren room]
DoneWithTurn
END_COMMAND

COMMAND GIANT
PrintMessage [doesn't work here]
DoneWithTurn
END_COMMAND

;SHELL/DEPRESSION

COMMAND SHELL
AtLocation [complex junction]
OR
AtLocation [arched hall]
OR
AtLocation [long sloping corridor]
OR
AtLocation [cul-de-sac]
PrintMessage [you find yourself ...]
BlankLine
GoToRoom [shell room]
DoneWithTurn
END_COMMAND

COMMAND DEPRESSION
AtLocation [hill by road]
OR
AtLocation [end of road]
OR
AtLocation [valley]
OR
AtLocation [slit]
PrintMessage [you find yourself ...]
BlankLine
GoToRoom [depression outside grate]
DoneWithTurn
END_COMMAND

COMMAND SHELL
PrintMessage [doesn't work here]
DoneWithTurn
END_COMMAND

;SIT COMMANDS

COMMAND SIT ANY
PrintMessage [You don't have time to sit down!]
DoneWithTurn
END_COMMAND

MESSAGE [You don't have time to sit down!]
Sitting down would be hazardous to the completion of your adventure.  You have
an urgent mission to perform and you had best get on with it.
END_MESSAGE

;WASH

COMMAND WASH URN
FlagON [Water here]
Present [Dirty Urn]
NOT IsLocated [N277  gray ashes] [Dirty Urn] ; has taken ashes out
SwapLocations [Dirty Urn] [N241  Jeweled Urn]
PrintMessage [You wash urn]
DoneWithTurn
END_COMMAND

COMMAND WASH URN
FlagOFF [Water here]
Present [water bottle]
Present [Dirty Urn]
NOT IsLocated [N277  gray ashes] [Dirty Urn] ; has taken ashes out
SwapLocations [empty bottle] [water bottle]
SwapLocations [Dirty Urn] [N241  Jeweled Urn]
PrintMessage [You wash urn]
DoneWithTurn
END_COMMAND

COMMAND WASH URN
FlagOn [Water here]
Present [Dirty Urn]
IsLocated [N277  gray ashes] [Dirty Urn] ; has NOT taken ashes out
PrintMessage [You try to wash urn]
DoneWithTurn
END_COMMAND

COMMAND WASH URN
FlagOFF [Water here]
Present [water bottle]
Present [Dirty Urn]
IsLocated [N277  gray ashes] [Dirty Urn] ; has NOT taken ashes out
Swaplocations [empty bottle] [water bottle]
PrintMessage [You try to wash urn]
DoneWithTurn
END_COMMAND

MESSAGE [You wash urn]
As you wash the grime and accumulated years of dirt off of the urn, you
discover that the urn is actually made of gold and encrusted with gems and
precious stones.
END_MESSAGE

MESSAGE [You try to wash urn]
You try and try and try to wash the accumulated decades of grime and dirt off
of the urn, but it is no use.
END_MESSAGE

COMMAND WASH ANY
PrintMessage [don't be ridiculous]
DoneWithTurn
END_COMMAND

;RUB/TOUCH/PUSH

MESSAGE [Rub it]
You $verb$ the rabbit's foot for a while, but nothing happens.
END_MESSAGE

COMMAND RUB FOOT
Present [Rabbit's Foot]
PrintMessage [Rub it]
DoneWithTurn
END_COMMAND

COMMAND RUB LAMP
PrintMessage [Rubbing the electric lamp is not particularly rewarding]
DoneWithTurn
END_COMMAND

MESSAGE [Rubbing the electric lamp is not particularly rewarding]
Rubbing the electric lamp is not particularly rewarding.  Anyway, nothing
exciting happens.
END_MESSAGE

COMMAND TOUCH ANY
AtLocation [programmer's den]
TurnFlagOFF [secret word given] ;revoke secret words
TurnFlagON [programmer angry]
PrintMessage [programmer takes revenge]
MinusScore 25 ;That will teach you
GoToRoom [twisty 44] ;Pirate's maze - just south of Pirate's den
DoneWithTurn
END_COMMAND

COMMAND RUB ANY
PrintMessage [peculiar - nothing happens]
DoneWithTurn
END_COMMAND

;FIND and SEARCH

COMMAND SEARCH THE DESK
Present [oak desk] (* Witt's desk is here *)
NOUNIsNumber [oak desk] (* Witt's desk was specified in input *)
IsLocked [oak desk] (* Witt's desk is locked *)
PrintMessage [The $adjective$ $noun$ is locked]
DoneWithTurn
END_COMMAND

COMMAND SEARCH THE DESK
Present [oak desk] (* Witt's desk is here *)
NOUNIsNumber [oak desk] (* Witt's desk was specified in input *)
IsUnLocked [oak desk] (* Witt's desk is unlocked *)
OpenIt [oak desk] (* Open Witt's desk -- first *)
NOT SomethingInside [oak desk] (* Witt's desk is empty. *)
PrintMessage [The $adjective$ $noun$ is empty]
DoneWithTurn
END_COMMAND

COMMAND SEARCH THE DESK
Present [oak desk] (* Witt's desk is here *)
NOUNIsNumber [oak desk] (* Witt's desk was specified in input *)
IsUnLocked [oak desk] (* Witt's desk is unlocked *)
OpenIt [oak desk] (* Open Witt's desk -- first *)
SomethingInside [oak desk] (* Witt's desk is NOT empty. *)
PrintMessage [The $adjective$ $noun$ contains:]
ShowContents [oak desk] (* Display contents of Witt's desk *)
DoneWithTurn
END_COMMAND

COMMAND SEARCH RIGHT POCKET
Present [right pocket] (* Right pocket of parka is here *)
NOUNIsNumber [right pocket] (* Right pocket of parka was specified in input *)
OpenIt [right pocket] (* Open right pocket -- first *)
NOT SomethingInside [right pocket] (* Right pocket is empty. *)
PrintMessage [You open the $adjective$ $noun$]
PrintMessage [The $adjective$ $noun$ is empty]
DoneWithTurn
END_COMMAND

COMMAND SEARCH RIGHT POCKET
Present [right pocket] (* Right pocket of parka is here *)
NOUNIsNumber [right pocket] (* Right pocket of parka was specified in input *)
OpenIt [right pocket] (* Open right pocket -- first *)
SomethingInside [right pocket] (* Right pocket is NOT empty. *)
PrintMessage [You open the $adjective$ $noun$]
PrintMessage [The $adjective$ $noun$ contains:]
ShowContents [right pocket] (* Display contents of Right Pocket *)
DoneWithTurn
END_COMMAND

COMMAND SEARCH LEFT POCKET
Present [left pocket] (* Left pocket of parka is here *)
NOUNIsNumber [left pocket] (* Left pocket of parka was specified in input *)
OpenIt [left pocket] (* Open left pocket -- first *)
NOT SomethingInside [left pocket] (* Left pocket is empty. *)
PrintMessage [You open the $adjective$ $noun$]
PrintMessage [The $adjective$ $noun$ is empty]
DoneWithTurn
END_COMMAND

COMMAND SEARCH LEFT POCKET
Present [left pocket] (* Left pocket of parka is here *)
NOUNIsNumber [left pocket] (* Left pocket of parka was specified in input *)
OpenIt [left pocket] (* Open left pocket -- first *)
SomethingInside [left pocket] (* Left pocket is NOT empty. *)
PrintMessage [You open the $adjective$ $noun$]
PrintMessage [The $adjective$ $noun$ contains:]
ShowContents [left pocket] (* Display contents of Left Pocket *)
DoneWithTurn
END_COMMAND

MESSAGE [Sorry, but the $adjective$ $noun$ is locked]
Sorry, but the $adjective$ $noun$ is locked.
END_MESSAGE

MESSAGE [You open the $adjective$ $noun$]
You open the $adjective$ $noun$.
END_MESSAGE

MESSAGE [The $adjective$ $noun$ is locked]
Sorry, but the $adjective$ $noun$ is locked.  You must unlock it first before
you can $verb$ it.
END_MESSAGE

MESSAGE [The $adjective$ $noun$ is empty]
You $verb$ the $adjective$ $noun$, but find it empty.
END_MESSAGE

MESSAGE [The $adjective$ $noun$ contains:]
The $adjective$ $noun$ contains:
END_MESSAGE

COMMAND FIND ANY
FlagON [dark w/o lamp]
NOT Present [ON Lamp]
Chance 50
PrintMessage [GROPE.FALL]
GoToRoom [Dead]
KillPlayer
DoneWithTurn
END_COMMAND

COMMAND FIND ANY
FlagON [dark w/o lamp]
NOT Present [ON Lamp]
Chance 50
NOUNPresent
PrintMessage [GROPE.FIND]
GetNOUN
DoneWithTurn
END_COMMAND

COMMAND FIND ANY
FlagON [dark w/o lamp]
NOT Present [ON Lamp]
PrintMessage [CANT.SEE.ANYTHING]
DoneWithTurn
END_COMMAND

COMMAND FIND KNIFE
PrintMessage [knife vanishes]
DoneWithTurn
END_COMMAND

COMMAND FIND ANY
NOUNPresent
PrintMessage "The $noun$ is right in front of you, dummy!"
DoneWithTurn
END_COMMAND

COMMAND FIND ANY
FlagON [cave closed]
PrintMessage "I daresay whatever you want is around here somewhere."
DoneWithTurn
END_COMMAND

COMMAND FIND DWARF
FlagON [dwarf here]
PrintMessage [it's already here]
DoneWithTurn
END_COMMAND

COMMAND FIND CAVE
FlagOFF [cave hint offered] ;hint has not been offered yet
TurnFlagON [cave hint offered] ;now it has
PrintMessage [want the hint?]
PromptForYes
TurnFlagON [temp] ;hint has been rejected - so far
PrintMessage [hint costs 5]
PrintMessage [is this acceptable?]
PromptForYes
TurnFlagOFF [temp] ;hint has been accepted
PrintMessage [follow the stream]
MinusScore 5
DoneWithTurn
END_COMMAND

COMMAND FIND CAVE
FlagON [temp] ;hint was rejected
TurnFlagOFF [temp]
PrintMessage [okay, do it yourself]
DoneWithTurn
END_COMMAND

COMMAND FIND ANY
PrintMessage [I can't help you find stuff]
DoneWithTurn
END_COMMAND

MESSAGE [I can't help you find stuff]
I can only tell you what you see as you move about and manipulate things.  I
cannot tell you where remote things are.
END_MESSAGE

;GET

COMMAND GET ANY
FlagON [dark w/o lamp]
NOT Present [ON Lamp]
Chance 50
PrintMessage [GROPE.FALL]
GoToRoom [Dead]
KillPlayer
DoneWithTurn
END_COMMAND

MESSAGE [GROPE.FALL]
Hmmph - you're not asking for much, are you - it's pitch dark in here!  Well,
I'll grope around and try to find the $noun$..... {hunt}    {hunt}
{rummage}    {trip}   Aiiieeeee...  >SPLAT!<
 
You stumbled into a pit and broke your back!
END_MESSAGE

#COMMENT -- GET TIME

COMMAND GET TIME
Present [clock]
ReDirectTo SAY TIME
END_COMMAND

COMMAND GET TIME
Present [Gold Watch]
GetIt [Gold Watch]
PrintMessage "As you get the watch, you notice the time ..."
BlankLine
ReDirectTo SAY TIME
END_COMMAND

COMMAND GET TIME
NOT Present [Gold Watch]
NOT Present [clock]
PrintMessage [Perhaps, you can find a sun dial somewhere.]
DoneWithTurn
END_COMMAND

COMMAND GET ANY
FlagON [dark w/o lamp]
NOT Present [ON Lamp]
Chance 50
NOUNPresent
PrintMessage [GROPE.FIND]
GetNOUN
DoneWithTurn
END_COMMAND

MESSAGE [GROPE.FIND]
Hmmph - you're not asking for much, are you - it's pitch dark in here, and
I'll have to grope around to find the $noun$.  Oh, well, I suppose that
that's part of my job...  {hunt}  {search} {seek}   Could this be the $noun$?
No. {search}       {hunt} {trip}   {curse}   {catch self}
{nurse scraped hand}   {seek}
 
Aha!  I have located the $noun$!.
END_MESSAGE

COMMAND GET ANY
FlagON [dark w/o lamp]
NOT Present [ON Lamp]
PrintMessage [CANT.SEE.ANYTHING]
DoneWithTurn
END_COMMAND

MESSAGE [CANT.SEE.ANYTHING]
It's pitch dark in here - I can't tell whether there's anything here that I
can pick up!
END_MESSAGE

COMMAND GET FLOOR
Present [suction cups]
AtLocation [computer center]
IsNoWhere [hole in floor]
PrintMessage [You lift up tile]
ChangePassageway [down] [below the computer center]
DropIt [hole in floor]
DoneWithTurn
END_COMMAND

COMMAND GET ANY
AtLocation [programmer's den]
TurnFlagOFF [secret word given] ;revoke secret words
TurnFlagON [programmer angry] ;programmer is angry
PrintMessage [programmer takes revenge]
MinusScore 25 ;That will teach you
GoToRoom [twisty 44] ;Pirate's maze - just south of Pirate's den
DoneWithTurn
END_COMMAND

COMMAND GET COBWEB
NOUNinRoom (* cobwebs are here *)
PrintMessage [Spider bites you]
GoToRoom [Dead]
KillPlayer
DoneWithTurn
END_COMMAND

MESSAGE [Spider bites you]
You were just bitten by a poisonous spider!  This type of spider is very
deadly -- so your life is about to end somewhat prematurely.
END_MESSAGE

COMMAND GET ROPE
AtLocation [R645  Bells!  Bells!  Room]
OR
AtLocation [R641  Bell Room]
BlankLine
DescribeThing [ropes in bell room]
DoneWithTurn
END_COMMAND

COMMAND GET CANE
Present [Gigantic Rabbit]
PrintMessage "Sorry, but the rabbit is not about to part with his cane."
DoneWithTurn
END_COMMAND

COMMAND GET SHAFT
PrintMessage [Leave it alone]
DoneWithTurn
END_COMMAND

COMMAND GET DUCT
Present [air-conditioning duct]
PrintMessage [You remove grate and enter duct]
BlankLine
GoToRoom [At Turn In Duct]
PlusScore 10
SwapLocations [air-conditioning duct] [air-conditioning grate]
DoneWithTurn
END_COMMAND

COMMAND GET GRATE
Present [air-conditioning duct]
PrintMessage [You remove grate and enter duct]
BlankLine
GoToRoom [At Turn In Duct]
PlusScore 10
SwapLocations [air-conditioning duct] [air-conditioning grate]
DoneWithTurn
END_COMMAND

MESSAGE [You remove grate and enter duct]
You manage to remove the grate covering the duct.  Like a true adventurer,
you then let your imagination get the better of your good sense and you crawl
into the duct.  You crawl about a hundred feet further into the duct before
you pause to rest at a place where the duct turns to the south.  The air is
still blasting away in the duct and you are very, very cold!
END_MESSAGE

COMMAND GET COMPUTER
AtLocation [computer center]
OR
AtLocation [private office]
PrintMessage [leave it alone]
DoneWithTurn
END_COMMAND

COMMAND GET MIRROR
PrintMessage [too far to reach]
DoneWithTurn
END_COMMAND

COMMAND GET SIGN
PrintMessage [Leave it alone]
DoneWithTurn
END_COMMAND

COMMAND GET BELL
PrintMessage [Leave it alone]
DoneWithTurn
END_COMMAND

COMMAND GET TOAD
Present [horny toad]
PrintMessage [Leave it alone]
DoneWithTurn
END_COMMAND

MESSAGE [Leave it alone]
A voice booms out, "Leave the $noun$ alone!"
END_MESSAGE

COMMAND GET KNIFE
FlagON [dwarf here]
PrintMessage [dwarf has it]
DoneWithTurn
END_COMMAND

MESSAGE [dwarf has it]
The dwarf is holding the knife very tightly.  I don't think the dwarf wants to
part with the knife except perhaps to do you grave bodily harm.  I suggest you
get away from here as fast as you can!
END_MESSAGE

COMMAND GET KNIFE
PrintMessage [knife vanishes]
DoneWithTurn
END_COMMAND

COMMAND GET PLANT
PrintMessage "The plant has exceptionally deep roots and cannot be pulled free."
DoneWithTurn
END_COMMAND

COMMAND GET BEAR
InRoom [contented bear]
PrintMessage [bear will follow]
TurnFlagON [bear following]
DoneWithTurn
END_COMMAND

MESSAGE [bear will follow]
You pet the bear affectionately and tickle it under its chin and behind its
ears.  It seems very happy and licks your hand (UGH!).  The bear likes you and
will follow you anywhere.  (Lucky you!)
END_MESSAGE

COMMAND GET BEAR
AtLocation [barren room]
PrintMessage "The bear is still chained to the wall."
DoneWithTurn
END_COMMAND

COMMAND GET PITCHER
IsCarrying [empty bottle]
OR
IsCarrying [water bottle]
PrintMessage [Too awkward!]
DoneWithTurn
END_COMMAND

COMMAND GET BOTTLE
IsCarrying [stone pitcher]
OR
IsCarrying [stone pitcher - with water in it]
PrintMessage [Too awkward!]
DoneWithTurn
END_COMMAND

MESSAGE [Too awkward!]
Sorry, but it is too awkward to carry both the bottle and the pitcher at the
same time.
END_MESSAGE

COMMAND GET WATER
FlagON [bottle full]
Present [water bottle]
PrintMessage [already full]
DoneWithTurn
END_COMMAND

COMMAND GET WATER
FlagON [Pitcher has water in it]
Present [stone pitcher - with water in it]
PrintMessage [already full]
DoneWithTurn
END_COMMAND

COMMAND GET WATER
NOT Present [empty bottle]
NOT Present [stone pitcher]
PrintMessage [nothing to put it in]
DoneWithTurn
END_COMMAND

COMMAND GET WATER
Present [empty bottle]
NOT Present [stone pitcher]
FlagON [Water here]
PrintMessage [bottle now full of water]
SwapLocations [empty bottle] [water bottle]
TurnFlagON [bottle full]
DoneWithTurn
END_COMMAND

COMMAND GET WATER
NOT Present [empty bottle]
Present [stone pitcher]
IsLocated [rose] [stone pitcher]
FlagON [Water here]
PrintMessage [pitcher now full of water]
BlankLine
SwapLocations [stone pitcher] [stone pitcher - with water in it]
SendToRoom [beautiful rose] [stone pitcher - with water in it]
PrintMessage [Rose is no longer wilting]
DoneWithTurn
END_COMMAND

MESSAGE [Rose is no longer wilting]
As soon as water and the rose met, the rose seems to take on a whole new life.
Its petals open wider and its color gets richer.  Strangely enough, it even
smells better.
END_MESSAGE

COMMAND GET WATER
NOT Present [empty bottle]
Present [stone pitcher]
FlagON [Water here]
PrintMessage [pitcher now full of water]
SwapLocations [stone pitcher] [stone pitcher - with water in it]
TurnFlagON [Pitcher has water in it]
DoneWithTurn
END_COMMAND

MESSAGE [pitcher now full of water]
The pitcher is now full of cool water.
END_MESSAGE

COMMAND GET WATER
FlagOFF [water here]
Present [empty bottle]
OR
Present [stone pitcher]
PrintMessage [no liquid here]
DoneWithTurn
END_COMMAND

COMMAND GET OIL
FlagON [bottle full]
PrintMessage [already full]
DoneWithTurn
END_COMMAND

COMMAND GET OIL
NOT Present [empty bottle]
PrintMessage [nothing to put it in]
DoneWithTurn
END_COMMAND

COMMAND GET OIL
AtLocation [east pit] ;east pit of twopit room
PrintMessage [bottle now full of oil]
SwapLocations [empty bottle] [oil bottle]
TurnFlagON [bottle full]
DoneWithTurn
END_COMMAND

COMMAND GET OIL
Present [empty bottle]
PrintMessage [no liquid here]
DoneWithTurn
END_COMMAND

COMMAND GET BIRD
InRoom [little bird]
FlagOFF [bird toggle] ;first time tried to GET BIRD
IsCarrying [black rod]
PrintMessage [bird disturbed]
TurnFlagON [bird toggle] ;now has tried to GET BIRD once
DoneWithTurn
END_COMMAND

MESSAGE [bird disturbed]
The bird was unafraid when you entered, but as you approach it becomes
disturbed and you cannot catch it.
END_MESSAGE

COMMAND GET BIRD
InRoom [little bird]
FlagON [bird toggle] ;second time tried to GET BIRD
IsCarrying [black rod]
PrintMessage [bird is scared]
TurnFlagOFF [bird toggle] ;toggle back to first response
DoneWithTurn
END_COMMAND

MESSAGE [bird is scared]
The bird is frightened right now and you cannot catch it no matter what you
try.  Perhaps you might try later.
END_MESSAGE

COMMAND GET BIRD
InRoom [little bird]
NOT IsCarrying [wicker cage]
PrintMessage "You can catch the bird, but you cannot carry it."
DoneWithTurn
END_COMMAND

COMMAND GET BIRD
InRoom [little bird]
IsCarrying [wicker cage]
PrintMessage "You catch the bird and put it inside the wicker cage."
SwapLocations [wicker cage] [caged bird]
Destroy [little bird]
DoneWithTurn
END_COMMAND

COMMAND GET CAGE
Present [caged bird]
GetIt [caged bird]
PrintMessage
You now have the cage with the bird in it.  The bird has stopped singing.
End_message
DoneWithTurn
END_COMMAND

COMMAND GET RUG
Present [green dragon]
PrintMessage [better not]
DoneWithTurn
END_COMMAND

COMMAND GET AXE
Present [green dragon]
InRoom [dwarf's axe]
PrintMessage [better not]
DoneWithTurn
END_COMMAND

COMMAND GET AXE
Present [ferocious bear]
InRoom [dwarf's axe]
PrintMessage [can't be serious]
DoneWithTurn
END_COMMAND

COMMAND GET VASE
InRoom [vase on pillow]
GetIt [ming vase]
SwapLocations [velvet pillow] [vase on pillow]
PrintMessage "You pick up the vase from its resting place on the pillow."
DoneWithTurn
END_COMMAND

COMMAND GET PILLOW
InRoom [vase on pillow]
GetIt [velvet pillow]
Destroy [vase on pillow]
PutInCurrentRoom [pottery shards]
PrintMessage [It smashes into a trillion tiny pieces]
LookAtRoom
DoneWithTurn
END_COMMAND

MESSAGE [It smashes into a trillion tiny pieces]
As you pick up the pillow, the vase accidentally falls to the ground and
smashes into a trillion tiny pieces.
END_MESSAGE

COMMAND GET ANY
AtLocationGT [S end of fog-filled room]
AtLocationLT [fog-filled room by cairn]
PrintMessage [GROPE.MISS]
DoneWithTurn
END_COMMAND

MESSAGE [GROPE.MISS]
Hmmph - you're not asking for much, are you.  You can't see a thing in here
and you'll have to grope around to try to find the $noun$.  Well, if you
must, you must......  {hunt}   {search}   {hunt} {hunt}
{peer-blindly}        {touch}  {hunt}   {stumble}    {search}
{scrape}   {swear}    {hunt}
 
No luck - you can't find the $noun$!.
END_MESSAGE

#COMMENT
If you have eaten a mushroom recently (within the last 12 turns), when you GET
SCEPTRE you will be told the magic word ZORTON -- the word needed to get into
the safe.  If you are not strong, then you will not be told a secret word when
you GET SCEPTRE -- but, rather told that "You blew it!"
#END_COMMENT

COMMAND GET SCEPTRE
FlagOFF [Player is very strong] ; player has normal strength
Present [skeleton on throne in Audience hall]
Destroy [skeleton on throne in Audience hall]
GetIt [sapphire-encrusted sceptre]
PrintMessage [BLEW.SAFE]
DoneWithTurn
END_MESSAGE

COMMAND GET SCEPTRE
FlagON [Player is very strong] ; player has special strength
Present [skeleton on throne in Audience hall]
Destroy [skeleton on throne in Audience hall]
GetIt [sapphire-encrusted sceptre]
PlusScore 15
PrintMessage [WHISPER]
DoneWithTurn
END_MESSAGE

MESSAGE [WHISPER]
You pluck the sceptre from the skeleton's bony hand.  As you do, the skeleton
raises its head and whispers "Remember - ZORTON!" in a foreboding tone; it then
sags to the ground and crumbles into dust which drifts away into the still air
of the cave.
END_MESSAGE

MESSAGE [BLEW.SAFE]
As you pluck the sceptre from the skeleton's grasp, it raises its head and
whispers, "You blew it!".  It then shivers and collapses into a pile of fine
dust which quickly vanishes.
END_MESSAGE

COMMAND GET SWORD
Present [singing sword - in rock]
FlagOFF [Player is very strong]
PrintMessage [SWORD.IS.STUCK]
DoneWithTurn
END_COMMAND

COMMAND GET SWORD
Present [singing sword - in rock]
FlagON [Player is very strong]
PrintMessage [GOT.THE.SWORD]
Destroy [singing sword - in rock]
GetIt [singing sword]
PlusScore 15
DoneWithTurn
END_COMMAND

MESSAGE [GOT.THE.SWORD]
The singing sword slides easily out of the rock.
END_MESSAGE

MESSAGE [SWORD.IS.STUCK]
The sword is firmly embedded in the stone, and you aren't strong enough to
pull it out.
END_MESSAGE

COMMAND GET CROWN
AtLocation [in the safe]
Present [iridium crown - floating]
Destroy [iridium crown - floating]
GetIt [iridium crown]
PrintMessage "You grab the floating crown out of the air."
DoneWithTurn
END_COMMAND

COMMAND GET MUSHROOM
Present [small mushroom - growing]
GetIt [small mushroom]
Destroy [small mushroom - growing]
PrintMessage "You pluck the mushroom (?) from the wall where it was growing."
DoneWithTurn
END_COMMAND

COMMAND GET BRIDGE
PrintMessage [don't be ridiculous]
DoneWithTurn
END_COMMAND

COMMAND GET ROAD
PrintMessage [don't be ridiculous]
DoneWithTurn
END_COMMAND

COMMAND GET MIST
PrintMessage "The mist just slips through your fingers."
DoneWithTurn
END_COMMAND

COMMAND GET CHASM
PrintMessage [don't be ridiculous]
DoneWithTurn
END_COMMAND

COMMAND GET BUILDING
PrintMessage [don't be ridiculous]
DoneWithTurn
END_COMMAND

COMMAND GET TREE
PrintMessage [don't be ridiculous]
DoneWithTurn
END_COMMAND

COMMAND GET STREAM
PrintMessage "Don't be ridiculous!  Try GET WATER -- instead."
DoneWithTurn
END_COMMAND

;PUT

COMMAND PUT WATER ON URN
ReDirectTo WASH URN
END_COMMAND

COMMAND PUT ROSE IN PITCHER
Present [stone pitcher]
Present [rose]
SendToRoom [rose] [stone pitcher]
PrintMessage "OK.  You put the rose in the pitcher."
DoneWithTurn
END_COMMAND

COMMAND PUT ROSE IN PITCHER
Present [stone pitcher - with water in it]
Present [rose]
Destroy [rose]
SendToRoom [beautiful rose] [stone pitcher - with water in it]
PrintMessage [Rose is no longer wilting]
DoneWithTurn
END_COMMAND

COMMAND PUT ANY IN SAFE
AtLocation [inside building]
Present [open vault]
NOUNPresent
PrintMessage [It tumbles down the stairs]
SendNOUNToRoom [Southern end of long hall]
DoneWithTurn
END_COMMAND

COMMAND PUT FLASK IN PENTAGRAM
AtLocation [pentagram room]
Present [earthenware flask - closed]
DropIt [earthenware flask - sealed]
Destroy [earthenware flask - closed]
PrintMessage [You set the flask in the pentragram]
DoneWithTurn
END_COMMAND

COMMAND PUT BIRD IN CAGE
ReDirectTo GET BIRD
END_COMMAND

COMMAND PUT BIRD
InRoom [little bird]
PrintMessage [don't be ridiculous]
DoneWithTurn
END_COMMAND

COMMAND PUT ANY IN CAGE
PrintMessage [It only holds birds]
DoneWithTurn
END_COMMAND

MESSAGE [It only holds birds]
Sorry, but this is a BIRD cage and holds only birds.  It is impossible to put
anything else in it.
END_MESSAGE

COMMAND PUT WATER IN BOTTLE
ReDirectTo GET WATER
END_COMMAND

COMMAND PUT WATER IN PITCHER
ReDirectTo GET WATER
END_COMMAND

COMMAND PUT OIL IN BOTTLE
ReDirectTo GET OIL
END_COMMAND

COMMAND PUT OIL
ReDirectTo POUR OIL
END_COMMAND

COMMAND PUT WATER
ReDirectTo POUR WATER
END_COMMAND

COMMAND PUT COINS IN MACHINE
InRoom [vending machine]
Present [rare coins]
PutInCurrentRoom [fresh batteries]
Destroy [rare coins]
PrintMessage [batteries appear]
DoneWithTurn
END_COMMAND

COMMAND PUT BATTERIES IN LAMP
Present [fresh batteries]
Present [OFF lamp]
OR
Present [ON lamp]
PutInCurrentRoom [worn-out batteries]
PutInCurrentRoom [ON lamp]
Destroy [OFF lamp]
Destroy [fresh batteries]
PrintMessage [lamp now on]
SetVariableTo [battery life] [battery max] ;new life in batteries
TurnFlagON [lamp lit]
LookAtRoom
DoneWithTurn
END_COMMAND

COMMAND PUT BATTERIES IN LAMP
NOT Present [fresh batteries]
PrintMessage [batteries are dead] ;sorry, but you need fresh batteries
DoneWithTurn
END_COMMAND

#COMMENT -- NO and YES

COMMAND NO
PrintMessage "You don't need to be so negative!  It's just a game!"
DoneWithTurn
END_COMMAND

COMMAND YES
PrintMessage "You don't say!  I wish I could be so positive!"
DoneWithTurn
END_COMMAND

;DROP/POUR/INSERT/CHANGE

MESSAGE [You drop a treasure]
As you drop the treasure, a voice booms out: "Well done!  You have collected
#VAR[Number of treasures dropped]# treasure(s) so far out of a total of[Total number of treasures]."

As the $noun$ hits the floor, it disappears in a puff of blue smoke!
END_MESSAGE

MESSAGE [Last Treasure Message]
As you drop the last treasure, a booming voice says: "You have now completed
your quest for treasure!"

However, because this voice is so amazingly loud, it starts an earthquake.
A crack opens up in the earth, and you fall down .... down ....
END_MESSAGE

MESSAGE [It tumbles down the stairs]
You put the $noun$ in the safe and it tumbles down the stairs.
END_MESSAGE

COMMAND DROP ALL
AtLocation [in the safe]
OR
AtLocation [inside building]
PrintMessage "Sorry, but you must drop things one-at-a-time, here!"
DoneWithTurn
END_COMMAND

COMMAND DROP ANY
NOUNIsWearing
GetNOUN
END_COMMAND

COMMAND DROP ANY IN SAFE
AtLocation [inside building]
Present [open vault]
NOUNPresent
PrintMessage [It tumbles down the stairs]
SendNOUNToRoom [Southern end of long hall]
DoneWithTurn
END_COMMAND

COMMAND DROP ANY
AtLocation [inside building]
NOUNPresent
[Is a treasure?]
AddToVariable [Number of treasures dropped] 1
END_COMMAND

COMMAND DROP ANY
AtLocation [inside building]
NOUNPresent
[Is a treasure?]
VariableEquals [Number of treasures dropped] [Total number of treasures]
SendNOUNToRoom [Limbo]
PrintMessage [Last Treasure Message]
BlankLine
TurnFlagON [Got all the treasures]
GoToRoom [nugget room]
DoneWithTurn
END_COMMAND

COMMAND DROP ANY
AtLocation [inside building]
NOUNIsCarrying
[Is a treasure?]
PrintMessage [You drop a treasure]
SendNOUNToRoom [Limbo]
DoneWithTurn
END_COMMAND

COMMAND DROP ANY
AtLocation [in the safe]
NOUNPresent
[Is a treasure?]
AddToVariable [Number of treasures dropped] 1
END_COMMAND

COMMAND DROP ANY
AtLocation [in the safe]
NOUNPresent
[Is a treasure?]
VariableEquals [Number of treasures dropped] [Total number of treasures]
SendNOUNToRoom [Limbo]
PrintMessage [Last Treasure Message]
BlankLine
TurnFlagON [Got all the treasures]
GoToRoom [nugget room]
DoneWithTurn
END_COMMAND

COMMAND DROP ANY
AtLocation [in the safe]
NOUNIsCarrying
[Is a treasure?]
PrintMessage [You drop a treasure]
SendNOUNToRoom [Limbo]
DoneWithTurn
END_COMMAND

COMMAND INSERT CARD
AtLocation [Southern end of long hall]
Present [access card]
PrintMessage [You use the access card]
BlankLine
GoToRoom [computer center]
DoneWithTurn
END_COMMAND

MESSAGE [You use the access card]
You insert the card into the slot.  A very loud buzzing sound comes from the
door and then the door swings open and you enter the room to find ...
END_MESSAGE

COMMAND INSERT DISK
AtLocation [computer center]
OR
AtLocation [private office]
Present [floppy disk]
PrintMessage [You insert disk in PC]
BlankLine
PrintMessage [AGT info]
PlusScore 10
DoneWithTurn
END_COMMAND

COMMAND DROP VIAL
Present [vial of oily liquid]
Chance 10
PrintMessage [VIAL.EXPLODES]
SendToRoom [vial of oily liquid] [nowhere]
GoToRoom [Dead]
KillPlayer
DoneWithTurn
END_COMMAND

MESSAGE [VIAL.EXPLODES]
The vial strikes the ground and explodes with a violent >FROOM<, neatly
severing your foot.  You bleed to death quickly and messily.
END_MESSAGE

MESSAGE [VIAL.BANG]
The vial explodes into splinters and disintegrates, releasing an oily liquid
which rapidly sublimes into a large mushroom-shaped cloud of thick yellow
vapor smelling like Cheddar cheese and bananas.
END_MESSAGE

COMMAND DROP MAGAZINE
AtLocation [witt's end]
Present [spelunker magazine]
Destroy [spelunker magazine]
PrintMessage [magazine disappears]
PlusScore 1
DoneWithTurn
END_COMMAND

MESSAGE [magazine disappears]
The magazine disappears in a puff of green smoke as it hits the ground.  A
loud voice echoes through the cave, "Well done!"
END_MESSAGE

COMMAND DROP OIL
AtLocation [west pit] ;room with plant
Present [oil bottle]
SwapLocations [oil bottle] [empty bottle]
PrintMessage
The plant indignantly shakes the oil off its leaves and asks: 'Water?'
End_Message
TurnFlagOFF [bottle full]
DoneWithTurn
END_COMMAND

COMMAND DROP OIL
InRoom [rusty door]
Present [oil bottle]
SwapLocations [oil bottle] [empty bottle]
PrintMessage [The oil has freed up the hinges]
SwapLocations [rusty door] [open door]
PlusScore 10
DoneWithTurn
END_COMMAND

MESSAGE [The oil has freed up the hinges]
The oil has freed up the hinges so that the door will now move, although it
requires some effort.
END_MESSAGE

COMMAND DROP OIL
Present [oil bottle]
SwapLocations [oil bottle] [empty bottle]
PrintMessage [bottle empty, ground wet]
PrintMessage [feet now wet]
TurnFlagOFF [bottle full]
DoneWithTurn
END_COMMAND

COMMAND POUR WATER
IsLocated [beautiful rose] [stone pitcher - with water in it]
Present [stone pitcher - with water in it]
SwapLocations [stone pitcher - with water in it] [stone pitcher]
Destroy [beautiful rose]
PrintMessage [the rose begins shriveling up]
TurnFlagOFF [Pitcher has water in it]
DoneWithTurn
END_COMMAND

MESSAGE [the rose begins shriveling up]
You pour the water out of the pitcher on to the ground.  As you do, the rose
begins shriveling up!  It's, It's...dying!  The petals fall off and are blown
away in the wind.  The rose disintegrates and disappears!  You murder!
END_MESSAGE

COMMAND POUR WATER
NOT IsLocated [beautiful rose] [stone pitcher - with water in it]
Present [stone pitcher - with water in it]
SwapLocations [stone pitcher - with water in it] [stone pitcher]
PrintMessage [feet now wet]
TurnFlagOFF [Pitcher has water in it]
DoneWithTurn
END_COMMAND

COMMAND POUR WATER
InRoom [gigantic beanstalk]
Present [water bottle]
SwapLocations [water bottle] [empty bottle]
PrintMessage [the plant shrivels up]
TurnFlagOFF [bottle full]
Destroy [gigantic beanstalk]
Destroy [gigantic beanstalk top] ;gigantic beanstalk in [long narrow corridor]
MinusScore 15
DoneWithTurn
END_COMMAND

MESSAGE [the plant shrivels up]
You've over-watered the plant!  It's shriveling up!  It's, It's...dying!
It's...disappeared!  You murder!
END_MESSAGE

COMMAND POUR WATER
InRoom [12' beanstalk]
Present [water bottle]
SwapLocations [water bottle] [empty bottle]
SwapLocations [gigantic beanstalk] [12' beanstalk]
SendToRoom [gigantic beanstalk top] [long narrow corridor]
Destroy [12' beanstalk top]
PrintMessage "The plant grows explosively, almost filling the bottom of the pit."
TurnFlagOFF [bottle full]
PlusScore 4
DoneWithTurn
END_COMMAND

COMMAND POUR WATER
InRoom [tiny plant]
Present [water bottle]
SwapLocations [water bottle] [empty bottle]
SwapLocations [tiny plant] [12' beanstalk]
SendToRoom [12' beanstalk top] [W end of twopit room]
PrintMessage "The plant spurts into furious growth for a few seconds."
TurnFlagOFF [bottle full]
PlusScore 5
DoneWithTurn
END_COMMAND

COMMAND POUR WATER
Present [water bottle]
SwapLocations [water bottle] [empty bottle]
PrintMessage [bottle empty, ground wet]
PrintMessage [feet now wet]
TurnFlagOFF [bottle full]
DoneWithTurn
END_COMMAND

COMMAND DROP VASE
InRoom [velvet pillow]
Present [ming vase]
SwapLocations [velvet pillow] [vase on pillow]
Destroy [ming vase]
PrintMessage [vase drops]
PrintMessage [didn't break]
DoneWithTurn
END_COMMAND

COMMAND DROP VASE
NOT InRoom [velvet pillow]
Present [ming vase]
Destroy [ming vase]
PutInCurrentRoom [pottery shards]
PrintMessage [vase drops]
LookAtRoom
DoneWithTurn
END_COMMAND

COMMAND DROP CAGE
IsCarrying [caged bird]
DropIt [caged bird]
PrintMessage [You put it on the ground]
DoneWithTurn
END_COMMAND

MESSAGE [You put it on the ground]
You put the cage (with the bird in it) on the ground.  The bird has stopped
singing.
END_MESSAGE

COMMAND INSERT COINS
InRoom [vending machine]
Present [rare coins]
PutInCurrentRoom [fresh batteries]
Destroy [rare coins]
PrintMessage [batteries appear]
DoneWithTurn
END_COMMAND

COMMAND INSERT BATTERIES
Present [fresh batteries]
Present [OFF lamp]
OR
Present [ON lamp]
PutInCurrentRoom [worn-out batteries]
PutInCurrentRoom [ON lamp]
Destroy [OFF lamp]
Destroy [fresh batteries]
PrintMessage [lamp now on]
SetVariableTo [battery life] [battery max] ;new life in batteries
TurnFlagON [lamp lit]
LookAtRoom
DoneWithTurn
END_COMMAND

COMMAND INSERT BATTERIES
NOT Present [fresh batteries]
PrintMessage [batteries are dead] ;sorry, but you need fresh batteries
DoneWithTurn
END_COMMAND

COMMAND DROP ANY
AtLocationGT [S end of fog-filled room]
AtLocationLT [fog-filled room by cairn]
DestroyNOUN
PrintMessage "After you drop it, the $noun$ disappears into the fog."
DoneWithTurn
END_COMMAND

COMMAND DROP ANY
NOUNPresent
AtLocation [circular Room]
OR
AtLocation [1st Level]
OR
AtLocation [2nd Level]
OR
AtLocation [3rd Level]
OR
AtLocation [4th Level]
PrintMessage [It drops down the staircase]
SendNOUNToRoom [Gates of Hell]
DoneWithTurn
END_COMMAND

MESSAGE [It drops down the staircase]
The $noun$ falls down the staircase.  You can hear it banging and bouncing
as it makes its journey downward.  The sound gets weaker and weaker and
weaker.  Finally, it stops falling or is too far away for you to hear anymore.
END_MESSAGE

COMMAND DROP FLASK
AtLocation [pentagram room]
Present [earthenware flask - closed]
DropIt [earthenware flask - sealed]
Destroy [earthenware flask - closed]
PrintMessage [You set the flask in the pentragram]
DoneWithTurn
END_COMMAND

MESSAGE [You set the flask in the pentragram]
You have set the flask down in the center of the pentagram.
END_MESSAGE

;RELEASE/FREE

COMMAND RELEASE DJINN
AtLocation [pentagram room]
Present [twelve-foot djinn]
PrintMessage [DJINN.ADVICE]
TurnFlagON [Djinn has been freed]
SendToRoom [twelve-foot djinn] [nowhere]
DoneWithTurn
END_COMMAND

COMMAND RELEASE BEAR
InRoom [burly troll]
Present [contented bear]
SwapLocations [burly troll] [phony troll] ;troll is nowhere to be seen
PrintMessage [bear chases troll]
TurnFlagON [troll eliminated]
TurnFlagOFF [bear following]
PlusScore 10
DoneWithTurn
END_COMMAND

COMMAND RELEASE BEAR
TurnFlagOFF [bear following]
PrintMessage [The bear gives you an affectionate lick]
END_COMMAND

MESSAGE [The bear gives you an affectionate lick]
The bear gives you an affectionate lick on the hand (UGH!) and then wanders
off to the far end of the room.
END_MESSAGE

COMMAND RELEASE BIRD
Present [caged bird]
InRoom [green snake]
SwapLocations [wicker cage] [caged bird]
PutInCurrentRoom [little bird]
PrintMessage [you release bird]
Destroy [green snake]
PrintMessage [bird attacks snake]
PlusScore 10
DoneWithTurn
END_COMMAND

COMMAND RELEASE BIRD
Present [caged bird]
InRoom [green dragon]
SwapLocations [wicker cage] [caged bird]
Destroy [little bird]
PrintMessage [dragon fries bird]
DoneWithTurn
END_COMMAND

COMMAND RELEASE BIRD
Present [caged bird]
InRoom [horny toad]
SwapLocations [wicker cage] [caged bird]
Destroy [little bird]
PrintMessage [toad eats bird]
DoneWithTurn
END_COMMAND

MESSAGE [toad eats bird]
The little bird attacks the toad with an astounding flurry of flying claws and
angry pecks of its sharp beak.  The toad sits stoically throughout the attack.
Finally, the toad opens it mouth and engulfs the bird.  Its mouth moves a
couple of times and then the toad emits a loud "belch ... rib-bit!"
END_MESSAGE

COMMAND RELEASE ANY
PrintMessage [I'm game]
DoneWithTurn
END_COMMAND

;DRINK

COMMAND DRINK WATER FROM PITCHER
Present [stone pitcher - with water in it]
SwapLocations [stone pitcher - with water in it] [stone pitcher]
PrintMessage [it was delicious]
TurnFlagOFF [Pitcher has water in it]
DoneWithTurn
END_COMMAND

COMMAND DRINK WATER FROM PITCHER
IsLocated [beautiful rose] [stone pitcher - with water in it]
Present [stone pitcher - with water in it]
SwapLocations [stone pitcher - with water in it] [stone pitcher]
Destroy [beautiful rose]
PrintMessage [it was delicious]
BlankLine
PrintMessage [The rose disintegrates and disappears!]
TurnFlagOFF [Pitcher has water in it]
DoneWithTurn
END_COMMAND

MESSAGE [The rose disintegrates and disappears!]
As you drink the last of the water from the pitcher, the rose begins to
shrivel up!  It's, It's...dying!  The petals fall off and are blown away in
the wind.  The rose disintegrates and disappears!  You murder!
END_MESSAGE

COMMAND DRINK WATER FROM BOTTLE
Present [water bottle]
PrintMessage [it was delicious]
PrintMessage [bottle now empty]
SwapLocations [empty bottle] [water bottle]
TurnFlagOFF [bottle full]
DoneWithTurn
END_COMMAND

COMMAND DRINK
AtLocation [on the beach]
PrintMessage [SALT.H20.BAD]
DoneWithTurn
END_COMMAND

COMMAND DRINK
FlagON [Water here]
PrintMessage [You have taken a drink from the stream]
DoneWithTurn
END_COMMAND

MESSAGE [You have taken a drink from the stream]
You have taken a drink from the stream.  The water tastes strongly of
minerals, but is not unpleasant.  It is extremely cold.
END_MESSAGE

COMMAND DRINK WATER
Present [water bottle]
PrintMessage [it was delicious]
PrintMessage [bottle now empty]
SwapLocations [empty bottle] [water bottle]
TurnFlagOFF [bottle full]
DoneWithTurn
END_COMMAND

COMMAND DRINK ANY
PrintMessage [don't be ridiculous]
DoneWithTurn
END_COMMAND

;SAY GO CRAWL RUN

COMMAND GO DUCT
AtLocation [air-conditioned room]
Present [air-conditioning grate]
GoToRoom [At Turn In Duct]
DoneWithTurn
END_COMMAND

COMMAND GO COFFIN
InRoom [open coffin]
GoToRoom [R28  Cavern]
PrintMessage [You climb down the steps in the open coffin]
DoneWithTurn
END_COMMAND

MESSAGE [You climb down the steps in the open coffin]
You climb down the steps in the open coffin to the room below.
END_MESSAGE

COMMAND GO LEDGE
PrintMessage [Sorry, you can't do that]
DoneWithTurn (* no further action -- get next input *)
END_COMMAND

MESSAGE [Sorry, you can't do that]
What a great idea!  You must have played this game before, but unfortunately
you can't do that now.  It is still a good idea and you may wish to try it
some other time.  But now it is impossible.
END_MESSAGE

; SAY TIME

COMMAND SAY TIME
FlagOFF [Is PM time?]
VariableLT [minutes] 10
PrintMessage [The time is ... AM  M122]
DoneWithTurn
END_COMMAND

COMMAND SAY TIME
FlagOFF [Is PM time?]
PrintMessage [The time is ... AM  M120]
DoneWithTurn
END_COMMAND

COMMAND SAY TIME
FlagON [Is PM time?]
VariableLT [minutes] 10
PrintMessage [The time is ... PM  M123]
DoneWithTurn
END_COMMAND

COMMAND SAY TIME
FlagON [Is PM time?]
PrintMessage [The time is ... PM  M121]
DoneWithTurn
END_COMMAND

COMMAND SAY
PrintMessage "Go ahead, just spit it out!  There is no need to say '$verb$'!"
DoneWithTurn
END_COMMAND

;QWERTY -- ask question and set status

COMMAND QWERTY
BlankLine
PrintMessage [Prove it!]
AskQuestion [Are you a wizard?]
TurnFlagON [temp flag]
BlankLine
AnswerIsCorrect
TurnFlagOFF [temp flag]
PrintMessage [OK -- you are a wizard]
TurnFlagON [Player is wizard]
DoneWithTurn
END_COMMAND

COMMAND QWERTY
FlagON [temp flag]
TurnFlagOFF [temp flag]
PrintMessage "You are not a real wizard!"
DoneWithTurn
END_COMMAND

MESSAGE [Prove it!]
You have entered the magic word "$VERB$", so you must be a wizard.  However,
you must prove you are really a wizard by answering the following question:
END_MESSAGE

QUESTION [Are you a wizard?] What is the best text adventure game development system?

ANSWER [Are you a wizard?] AGT

MESSAGE [OK -- you are a wizard]
You really are a wizard!  From now on, your lamp will shine without using up
its batteries, the dwarves will no longer dare to confront you, and you will
no longer be subject to "random" deaths.  Lucky you!
END_MESSAGE

;OPEN

COMMAND OPEN MAGAZINE
Present [spelunker magazine]
PrintMessage
SECRET WORD #7 -- NECROMANCY (n) black magic; dealing with the dead.
End_Message
BlankLine
DoneWithTurn
END_COMMAND

COMMAND OPEN CLOCK
Present [clock]
PrintMessage "SECRET WORD #2 -- CUPIDITY (n) greed."
BlankLine
PrintMessage "You can't get the clock open.  However, you notice the time ..."
BlankLine
ReDirectTo SAY TIME
END_COMMAND

COMMAND OPEN COFFIN
InRoom [N242  closed coffin] (* closed coffin *)
SwapLocations [N242  closed coffin] [open coffin]
PrintMessage [You open coffin]
ChangePassageway [Down] [R28  Cavern]
DoneWithTurn (* no further action -- get next input *)
END_COMMAND

MESSAGE [You open coffin]
You manage to slide the coffin lid off and discover a stairway inside the
coffin leading down into the darkness below.
END_MESSAGE

COMMAND OPEN DESK
Present [oak desk] (* Witt's desk is here *)
NOUNIsNumber [oak desk] (* Witt's desk was specified in input *)
IsLocked [oak desk] (* Witt's desk is locked *)
PrintMessage [Sorry, but the $adjective$ $noun$ is locked]
DoneWithTurn
END_COMMAND

COMMAND OPEN DUCT
Present [air-conditioning duct]
PrintMessage [You remove grate and enter duct]
BlankLine
GoToRoom [At Turn In Duct]
PlusScore 10
SwapLocations [air-conditioning duct] [air-conditioning grate]
DoneWithTurn
END_COMMAND

COMMAND OPEN SAFE
 Present [unlocked vault]                       <-- vault ready to be opened
 FlagOFF [vault points earned]  ; player has not earned points yet
 TurnFlagON [vault points earned]  ; player has now earned 15 points
 PlusScore 15
END_COMMAND

COMMAND OPEN SAFE
 Present [unlocked vault]                       <-- vault ready to be opened
 SwapLocations [unlocked vault] [open vault]    <-- so do it
 PrintMessage [door swings open]                <-- and tell `em
 TurnFlagON [temporary]                         <-- turn temporary flag on
 SomethingInside [open vault]                   <-- if true
 TurnFlagOFF [temporary]                        <-- turn temporary flag off
 ShowContents [open vault]                      <-- and show `em what's there
 DoneWithTurn
END_COMMAND

COMMAND OPEN SAFE
 Present [open vault]                   <-- open vault is here
 FlagON [temporary]                     <-- program fell thru from above
 NOT SomethingInside [open vault]       <-- verify that vault is really empty
 PrintMessage "Nothing!  The safe is empty!"
 TurnFlagOFF [temporary]                <-- now turn temporary flag off
 DoneWithTurn
END_COMMAND

COMMAND OPEN SAFE
 Present [open vault]
 PrintMessage [ALREADY.OPEN]
 DoneWithTurn
END_COMMAND

MESSAGE [door swings open]
You pull the handle with all your strength and the large door slowly swings
open revealing the contents of the safe.

You see.....
END_MESSAGE

COMMAND OPEN GATE
AtLocation [Gates of Hell]
PrintMessage "You try unsuccessfully to open the gate, but it is locked."
DoneWithTurn
END_COMMAND

COMMAND OPEN VIAL
Present [vial of oily liquid]
ReDirectTo BREAK VIAL
END_COMMAND

COMMAND OPEN FLASK
AtLocation [pentagram room]
InRoom [earthenware flask - sealed]
DropIt [earthenware flask - empty]
SendToRoom [twelve-foot djinn] [pentagram room]
Destroy [earthenware flask - sealed]
PrintMessage [POLITE.DJINN]
PlusScore 15
DoneWithTurn
END_COMMAND

COMMAND OPEN FLASK
Present [earthenware flask - closed]
DropIt [earthenware flask - empty]
Destroy [earthenware flask - closed]
PrintMessage [RUDE.DJINN]
PlusScore 5
DoneWithTurn
END_COMMAND

COMMAND OPEN FLASK
Present [earthenware flask - empty]
PrintMessage [ALREADY.OPEN]
DoneWithTurn
END_COMMAND

COMMAND OPEN PENTAGRAM
AtLocation [pentagram room]
Present [twelve-foot djinn]
PrintMessage [DJINN.ADVICE]
TurnFlagON [Djinn has been freed]
SendToRoom [twelve-foot djinn] [nowhere]
DoneWithTurn
END_COMMAND

COMMAND OPEN PENTAGRAM
AtLocation [pentagram room]
NOT Present [twelve-foot djinn]
PrintMessage [EMPTY.PENTA]
DoneWithTurn
END_COMMAND

MESSAGE [POLITE.DJINN]
The wax seal breaks away easily.  A cloud of dark smoke pours up from the
mouth of the flask and condenses into the form of a twelve-foot Djinn standing
in the pentagram.  He pushes experimentally at the magical wall of the
pentagram (which holds), and nods politely to you.  "MY THANKS, OH MORTAL," he
says in an incredibly deep bass voice.  "IT HAS BEEN THREE THOUSAND YEARS
SINCE SOLOMON SEALED ME INTO THAT BOTTLE, AND I AM GRATEFUL THAT YOU HAVE
RELEASED ME.  IF YOU WILL OPEN THIS PENTAGRAM AND LET ME GO FREE, I WILL GIVE
YOU SOME ADVICE THAT YOU MAY ONE DAY WISH TO POSSESS."
END_MESSAGE

MESSAGE [RUDE.DJINN]
The flask's wax seal crumbles at your touch.  A large cloud of black smoke
pours out, solidifying into the form of a twelve-foot Djinn. "AT LAST!" he
says in an earth-shaking voice, "I KNEW THAT SOMEDAY SOMEONE WOULD RELEASE ME!
I WOULD REWARD YOU FOR THIS, MORTAL, BUT IT HAS BEEN THREE THOUSAND YEARS
SINCE I HAD A SOLID MEAL, AND I'M NOT GOING TO STAND HERE CHATTERING WHEN I
COULD BE EXIT EATING A SIX-INCH SIRLOIN STEAK.  FAREWELL."  With that, he
somewhat rudely explodes back into smoke and drifts quickly out of sight.
END_MESSAGE

MESSAGE [DJINN.ADVICE]
The pentagram's magical barrier sparks fitfully and goes down.  The Djinn
stretches gratefully and smiles at you.  "AGAIN, MY THANKS," he says.  "MY
ADVICE TO YOU WILL TAKE THE FORM OF A HISTORY LESSON. WHEN RALPH WITT, THE
ARCHITECT AND CONSTRUCTOR OF THIS CAVE, WAS VERY YOUNG, HE BECAME VERY
INCENSED THAT HIS NAME WAS AT THE END OF THE ALPHABET.  HE FELT (FOR SOME
REASON) THAT THE LETTER W BELONGED NEAR THE BEGINNING OF THE ALPHABET, AND
THAT ALL OF THOSE "UPSTART LETTERS WHICH UNFAIRLY USURPED THE BEST ROOMS"
SHOULD BE FORCED INTO EXILE AT THE END OF THE ALPHABET.  HIS INSTINCT FOR
MATTERS MAGICAL AND MYSTICAL LED HIM TO APPLY THIS STRANGE BELIEF INTO THE
CAVE'S STRUCTURE WHEN HE EXCAVATED IT.  YOU HAVEN'T YET BEEN AFFECTED BY HIS
STRANGE HABITS, BUT YOU SHOULD REMEMBER THIS.  FAREWELL, AND GOOD LUCK."  With
that, the Djinn evaporates into a cloud of smoke and drifts rapidly away.
END_MESSAGE

MESSAGE [EMPTY.PENTA]
The pentagram is empty - there's nothing to let out!
END_MESSAGE

COMMAND OPEN SAFE
Present [walk-in safe - closed]
PrintMessage [NO.KEYHOLE]
DoneWithTurn
END_COMMAND

COMMAND OPEN SAFE
Present [walk-in safe - open]
PrintMessage [ALREADY.OPEN]
DoneWithTurn
END_COMMAND

COMMAND OPEN SAFE
Present [walk-in safe - fused shut]
PrintMessage [IT.IS.MELTED]
DoneWithTurn
END_COMMAND

COMMAND OPEN CLAM
IsCarrying [giant clam]
PrintMessage "I advise you to put down the clam before opening it. >STRAIN!<"
DoneWithTurn
END_COMMAND

COMMAND OPEN CLAM
NOT present [jeweled trident]
Present [giant clam]
PrintMessage "You don't have anything strong enough to open the clam."
DoneWithTurn
END_COMMAND

COMMAND OPEN CLAM
present [jeweled trident]
InRoom [giant clam]
PrintMessage [A glistening pearl falls out of the clam]
SwapLocations [giant clam] [giant oyster]
SendToRoom [glistening pearl] [cul-de-sac]
PlusScore 15
DoneWithTurn
END_COMMAND

MESSAGE [A glistening pearl falls out of the clam]
A glistening pearl falls out of the clam and rolls away.  Goodness, this must
really be an oyster.  (I never was very good at identifying bivalves.)
Whatever it is, it has now snapped shut again.
END_MESSAGE

COMMAND OPEN OYSTER
IsCarrying [giant oyster]
PrintMessage "I advise you to put down the oyster before opening it.  >WRENCH!<"
DoneWithTurn
END_COMMAND

COMMAND OPEN OYSTER
NOT present [jeweled trident]
Present [giant oyster]
PrintMessage "You don't have anything strong enough to open the oyster."
DoneWithTurn
END_COMMAND

COMMAND OPEN OYSTER
present [jeweled trident]
InRoom [giant oyster]
PrintMessage [The oyster creaks open]
DoneWithTurn
END_COMMAND

MESSAGE [The oyster creaks open]
The oyster creaks open, revealing nothing but oyster inside.  It promptly
snaps shut again.
END_MESSAGE

COMMAND OPEN DOOR
InRoom [open door]
PrintMessage [Give the COMMAND NORTH]
DoneWithTurn
END_COMMAND

MESSAGE [Give the COMMAND NORTH]
The door is already open and you can go through it by giving the COMMAND
"NORTH".
END_MESSAGE

COMMAND OPEN DOOR
InRoom [rusty door]
PrintMessage [too rusty to open]
DoneWithTurn
END_COMMAND

COMMAND OPEN CAGE
Present [caged bird]
InRoom [green snake]
PutInCurrentRoom [little bird]
SwapLocations [wicker cage] [caged bird]
Destroy [green snake]
PrintMessage [bird attacks snake]
PlusScore 10
DoneWithTurn
END_COMMAND

COMMAND OPEN CAGE
Present [caged bird]
InRoom [green dragon]
SwapLocations [wicker cage] [caged bird]
Destroy [little bird]
PrintMessage [dragon fries bird]
DoneWithTurn
END_COMMAND

COMMAND OPEN CAGE
Present [caged bird]
InRoom [horny toad]
SwapLocations [wicker cage] [caged bird]
Destroy [little bird]
PrintMessage [toad eats bird]
DoneWithTurn
END_COMMAND

COMMAND OPEN CAGE
Present [caged bird]
SwapLocations [wicker cage] [caged bird]
PutInCurrentRoom [little bird]
PrintMessage [you release bird]
DoneWithTurn
END_COMMAND

COMMAND OPEN CAGE
Present [wicker cage]
PrintMessage "The cage door is broken and it wont close properly.  It is now open."
DoneWithTurn
END_COMMAND

;PULL

COMMAND PULL ROPE
FlagOFF [Has rung the church bells]
AtLocation [R641  Bell Room]
OR
AtLocation [R645  Bells!  Bells!  Room]
PlusScore 10 ; give 10 points for ringing church bells
TurnFlagON [Has rung the church bells]
END_COMMAND

COMMAND PULL ROPE
AtLocation [R641  Bell Room]
OR
AtLocation [R645  Bells!  Bells!  Room]
PrintMessage [Later Bell Ring]
DoneWithTurn
END_COMMAND

COMMAND PULL HANDLE
Present [unlocked vault]                 <-- vault ready to be opened
ReDirectTo OPEN SAFE
END_COMMAND

;CLOSE

COMMAND CLOSE COFFIN
InRoom [open coffin]
SwapLocations [N242  closed coffin] [open coffin]
PrintMessage [You close coffin]
ChangePassageway [Down] [NoWhere]
DoneWithTurn (* no further action -- get next input *)
END_COMMAND

MESSAGE [You close coffin]
With a great deal of huffing and puffing, you manage to slide the coffin lid
back on to the coffin.
END_MESSAGE

COMMAND CLOSE SAFE
 Present [locked vault]
  OR
 Present [unlocked vault]
 PrintMessage [ALREADY.SHUT]
 DoneWithTurn
END_COMMAND

COMMAND CLOSE SAFE
 Present [open vault]
 SwapLocations [open vault] [unlocked vault]
 PrintMessage "You swing the heavy safe door closed!"
 DoneWithTurn
END_COMMAND

COMMAND CLOSE FLASK
Present [earthenware flask - closed]
PrintMessage [ALREADY.SHUT]
DoneWithTurn
END_COMMAND

COMMAND CLOSE FLASK
Present [earthenware flask - empty]
OR
Present [earthenware flask - sealed]
PrintMessage [DONT.KNOW.HOW]
DoneWithTurn
END_COMMAND

MESSAGE [ALREADY.OPEN]
The $noun$ is already open!
END_MESSAGE

MESSAGE [ALREADY.SHUT]
The $noun$ is already closed!
END_MESSAGE

MESSAGE [DONT.KNOW.HOW]
Sorry, but I don't know how to $verb$ the $noun$!
END_MESSAGE

COMMAND CLOSE SAFE
Present [walk-in safe - open]
SwapLocations [walk-in safe - open] [walk-in safe - closed]
SetVariableTo [Status of Safe] 0 ; safe is now closed
PrintMessage [SAFE.SHUTS]
DoneWithTurn
END_COMMAND

COMMAND CLOSE SAFE
AtLocation [in the safe]
PrintMessage [NO.HANDLE]
DoneWithTurn
END_COMMAND

MESSAGE [NO.HANDLE]
There is no handle on the inside of the safe door, nor any other way to get a
grip on it.  You'll have to leave the safe before shutting it.
END_MESSAGE

COMMAND CLOSE SAFE
Present [walk-in safe - closed]
PrintMessage [ALREADY.SHUT]
DoneWithTurn
END_COMMAND

COMMAND CLOSE CAGE
Present [wicker cage]
PrintMessage "You close the cage door, but the latch is broken and it pops open again."
DoneWithTurn
END_COMMAND

;WATER/OIL

COMMAND OIL
ReDirectTo POUR OIL
END_COMMAND

COMMAND WATER ANY
InRoom [gigantic beanstalk]
OR
InRoom [12' beanstalk]
OR
InRoom [tiny plant]
ReDirectTo POUR WATER
END_COMMAND

COMMAND WATER ANY
Present [stone pitcher - with water in it]
ReDirectTo POUR WATER
END_COMMAND

COMMAND WATER ANY
Present [water bottle]
SwapLocations [water bottle] [empty bottle]
PrintMessage [bottle empty, ground wet]
PrintMessage [feet now wet]
TurnFlagOFF [bottle full]
DoneWithTurn
END_COMMAND

COMMAND WATER ANY
PrintMessage [can't be serious]
DoneWithTurn
END_COMMAND

#COMMENT -- OOPS

COMMAND OOPS
PrintMessage [What do you mean 'OOPS'?]
DoneWithTurn
END_COMMAND

MESSAGE [What do you mean 'OOPS'?]
What do you mean 'OOPS'?.  Can't you type and/or spell?  Perhaps, you should
stick to those wimpy graphic adventures!
END_MESSAGE


;LOCK

COMMAND LOCK SAFE
 Present [locked vault]
 PrintMessage [already locked]
 DoneWithTurn
END_COMMAND

COMMAND LOCK SAFE
 Present [open vault]
 PrintMessage "You have to close it before you can lock it!"
 DoneWithTurn
END_COMMAND

COMMAND LOCK SAFE
 FlagON [vault unlocked]                         <-- vault is still unlocked
 Present [unlocked vault]                        <-- unlocked vault is here
 SwapLocations [unlocked vault] [locked vault]   <-- get the locked vault
 PrintMessage [lock vault]                       <-- tell `em about it
 TurnFlagOFF [vault unlocked]                    <-- reset the mechanism
 DoneWithTurn
END_COMMAND

MESSAGE [lock vault]
You turn the handle counter clockwise, until it is again pointing at the dial,
and as you do the heavy rods slide into the frame with a very loud "CLICK"!
The safe is now locked.
END_MESSAGE

COMMAND LOCK ANY
NOT present [iron keys]
NOT present [gold key]
PrintMessage [have no keys]
DoneWithTurn
END_COMMAND

COMMAND LOCK CAGE
Present [wicker cage]
OR
Present [caged bird]
PrintMessage [has no lock]
DoneWithTurn
END_COMMAND

COMMAND LOCK KEYS
Present [iron keys]
OR
Present [gold key]
PrintMessage [You can't lock or unlock the keys]
DoneWithTurn
END_COMMAND

MESSAGE [You can't lock or unlock the keys]
You can't lock or unlock the keys.  You have to LOCK or UNLOCK something WITH
THE KEYS!
END_MESSAGE

COMMAND LOCK CHAIN
NOT AtLocation [barren room]
PrintMessage "There is nothing here to which the chain can be locked."
DoneWithTurn
END_COMMAND

COMMAND LOCK CHAIN
AtLocation [barren room]
Present [iron keys]
Present [chain locked to wall]
OR
Present [locked chain w/bear]
PrintMessage [already locked]
DoneWithTurn
END_COMMAND

COMMAND LOCK CHAIN
AtLocation [barren room]
Present [iron keys]
Present [golden chain]
Destroy [golden chain]
PutInCurrentRoom [chain locked to wall]
PrintMessage "OK.  The $noun$ is now locked!"
DoneWithTurn
END_COMMAND

COMMAND LOCK BEAR
NOT AtLocation [barren room]
PrintMessage "There is nothing here to which the bear can be locked."
DoneWithTurn
END_COMMAND

COMMAND LOCK BEAR
AtLocation [barren room]
Present [iron keys]
Present [locked chain w/bear]
PrintMessage [already locked]
DoneWithTurn
END_COMMAND

COMMAND LOCK BEAR
AtLocation [barren room]
Present [iron keys]
Present [golden chain]
Present [contented bear]
Destroy [golden chain]
Destroy [contented bear]
PutInCurrentRoom [locked chain w/bear]
PutInCurrentRoom [gentle bear]
PrintMessage "OK.  The bear is now locked to the wall with the chain."
DoneWithTurn
END_COMMAND

;UNLOCK

COMMAND UNLOCK ANY WITH ANY
NOT present [iron keys]
NOT present [gold key]
PrintMessage [have no keys]
DoneWithTurn
END_COMMAND

COMMAND UNLOCK CAGE WITH ANY
Present [wicker cage]
OR
Present [caged bird]
PrintMessage [has no lock]
DoneWithTurn
END_COMMAND

COMMAND UNLOCK GRATE WITH ANY
FlagON [cave closed]
PrintMessage [this exit closed]
DoneWithTurn
END_COMMAND

COMMAND UNLOCK GRATE WITH ANY
FlagOFF [cave closed]
AtLocation [depression outside grate]
UnlockIt [iron grate]
PrintMessage "The grate is now unlocked and ready to open."
DoneWithTurn
END_COMMAND

COMMAND UNLOCK GRATE WITH ANY
FlagOFF [cave closed]
AtLocation [below grate]
PrintMessage [lock out of reach]
DoneWithTurn
END_COMMAND

MESSAGE [lock out of reach]
Unfortunately, the lock is one the other side of the grate and you can't reach
it from here.
END_MESSAGE

COMMAND UNLOCK ANY WITH ANY
InRoom [ferocious bear]
PrintMessage [can't get past bear]
DoneWithTurn
END_COMMAND

MESSAGE [can't get past bear]
There is no way to get past the bear to unlock the chain, which is probably
just as well.
END_MESSAGE

COMMAND UNLOCK BEAR WITH ANY
Present [contented bear]
PrintMessage [already unlocked]
DoneWithTurn
END_COMMAND

COMMAND UNLOCK ANY WITH ANY
Present [iron keys]
InRoom [gentle bear]
SwapLocations [gentle bear] [contented bear]
SwapLocations [locked chain w/bear] [chain locked to wall]
PrintMessage "The bear is now unlocked and is free to roam about the cave."
DoneWithTurn
END_COMMAND

COMMAND UNLOCK CHAIN WITH ANY
Present [golden chain]
PrintMessage [already unlocked]
DoneWithTurn
END_COMMAND

COMMAND UNLOCK CHAIN WITH ANY
Present [iron keys]
InRoom [chain locked to wall]
SwapLocations [chain locked to wall] [golden chain]
PrintMessage "OK.  The $noun$ is now unlocked!"
DoneWithTurn
END_COMMAND

; PRAY

COMMAND PRAY
Present [burning candle]
FlagOFF [Has got points for prayer]
PrintMessage "Prayer is good for the soul.  You feel better, now."
TurnFlagON [Has got points for prayer]
PlusScore 15 ; points for praying in church with lit candle
DoneWithTurn
END_COMMAND

COMMAND PRAY
PrintMessage "You're going to need a lot of prayer before this adventure is over."
DoneWithTurn
END_COMMAND

;LIGHT

COMMAND LIGHT LAMP
Present [OFF lamp]
Destroy [purple faint glow]
Destroy [red faint glow]
Destroy [green faint glow]
Destroy [black faint glow]
Destroy [yellow faint glow]
Destroy [orange faint glow]
Destroy [magenta faint glow]
Destroy [pink faint glow]
END_COMMAND

COMMAND LIGHT LAMP
Present [ON lamp]
PrintMessage [lamp now on]
DoneWithTurn
END_COMMAND

COMMAND LIGHT LAMP
NOT Present [OFF lamp]
PrintMessage "Sorry, but you have no source of light!"
DoneWithTurn
END_COMMAND

COMMAND LIGHT LAMP
Present [OFF lamp]
VariableGT [battery life] 0 ;batteries are not dead, yet
PrintMessage [lamp now on]
TurnFlagON [lamp lit]
SwapLocations [ON lamp] [OFF lamp]
DoneWithTurn
END_COMMAND

COMMAND LIGHT LAMP
Present [OFF lamp]
VariableEquals [battery life] 0 ;batteries are dead
PrintMessage [batteries are dead]
DoneWithTurn
END_COMMAND

MESSAGE [No more matches]
There are no more matches left.  Too bad!
END_MESSAGE

COMMAND LIGHT ANY
VariableEquals [matches left] 0
PrintMessage [No more matches]
DoneWithTurn
END_COMMAND

MESSAGE [That was your last match]
That was your last match.
END_MESSAGE

COMMAND LIGHT MATCH
Present [matches]
VariableGT [matches left] 0
PrintMessage "You strike a match which glows brightly and then goes out."
SubtractFromVariable [matches left] 1
VariableEquals [matches left] 0
PrintMessage [That was your last match]
Destroy [matches]
END_COMMAND

COMMAND LIGHT MATCH
DoneWithTurn
END_COMMAND

COMMAND LIGHT CANDLE
NOT Present [candles]
OR
VariableEquals [candles left] 0
PrintMessage "You know, that's impossible to do without candles."
DoneWithTurn
END_COMMAND

COMMAND LIGHT CANDLE
Present [matches]
Present [candles]
VariableGT [matches left] 0
VariableGT [candles left] 0
PrintMessage "You light the candle which burns brightly."
TurnCounterON [Candle Counter]
GetIt [burning candle] ; player is now carrying burning candle
SubtractFromVariable [matches left] 1
SubtractFromVariable [candles left] 1
VariableEquals [matches left] 0
PrintMessage [That was your last match]
Destroy [matches]
END_COMMAND

COMMAND LIGHT CANDLE
VariableEquals [candles left] 0
BlankLine
PrintMessage [Unfortunately, that was your last candle]
Destroy [candles]
END_COMMAND

MESSAGE [Unfortunately, that was your last candle]
Unfortunately, that was your last candle.
END_MESSAGE

COMMAND LIGHT CANDLE
DoneWithTurn
END_COMMAND

COMMAND LIGHT LEAVES
PrintMessage "A voice booms out, 'That would cause air pollution!!'"
DoneWithTurn
END_COMMAND

;EXTINGUISH

COMMAND EXTINGUISH CANDLE
Present [burning candle]
TurnCounterOFF [Candle Counter]
PrintMessage "You blow out the candle."
BlankLine
Destroy [burning candle]
VariableEquals [candles left] 0
PrintMessage [Unfortunately, that was your last candle]
BlankLine
END_COMMAND

COMMAND EXTINGUISH CANDLE
DoneWithTurn
END_COMMAND

COMMAND EXTINGUISH LAMP
Present [ON lamp]
SendToRoom [purple faint glow] [purple foggy room]
SendToRoom [red faint glow] [red foggy room]
SendToRoom [green faint glow] [green foggy room]
SendToRoom [black faint glow] [black foggy room]
SendToRoom [yellow faint glow] [yellow foggy room]
SendToRoom [orange faint glow] [orange foggy room]
SendToRoom [magenta faint glow] [magenta foggy room]
SendToRoom [pink faint glow] [pink foggy room]
END_COMMAND

COMMAND EXTINGUISH LAMP
Present [OFF lamp]
PrintMessage [lamp now off]
DoneWithTurn
END_COMMAND

COMMAND EXTINGUISH LAMP
Present [ON lamp]
PrintMessage [lamp now off]
TurnFlagOFF [lamp lit]
SwapLocations [ON lamp] [OFF lamp]
DoneWithTurn
END_COMMAND

;WAVE

COMMAND WAVE ROD
NOT IsCarrying [black rod]
PrintMessage [don't have the resources]
DoneWithTurn
END_COMMAND

#COMMENT
From the "breath-taking view", the player must wave the rod to cause the
wheatstone bridge to appear across the gorge.  Waving the rod again, will
cause the bridge to disappear.  Once the bridge spans the gorge, the player
can cross if he is carrying the ring and the bear in not following him.  If he
is not carrying the ring, he will be burned by the fumes from the volcano and
die.
#END_COMMENT

COMMAND WAVE ROD
Present [black rod]
IsNoWhere [wheatstone bridge 1]
AtLocation [breath-taking view]
OR
AtLocation [S end of Stone Faces]
PrintMessage [wheatstone bridge appears]
SendToRoom [wheatstone bridge 1] [breath-taking view]
SendToRoom [wheatstone bridge 2] [S end of Stone Faces]
DoneWithTurn
END_COMMAND

COMMAND WAVE ROD
Present [black rod]
IsSomeWhere [wheatstone bridge 1]
AtLocation [breath-taking view]
OR
AtLocation [S end of Stone Faces]
PrintMessage [wheatstone bridge disappears]
Destroy [wheatstone bridge 1]
Destroy [wheatstone bridge 2]
DoneWithTurn
END_COMMAND

MESSAGE [wheatstone bridge appears]
The earth begins to shudder violently, and smoke flows up from the gorge
beneath your feet.  With a violent >glop<, the volcano belches out an immense
blast of molten lava which flies into the air above the gorge and suddenly
solidifies into a fragile-looking arch of wheat-colored stone that bridges the
gorge.
END_MESSAGE

MESSAGE [wheatstone bridge disappears]
The earth shudders violently, and steam blasts upwards from the geyser. The
wheat-stone bridge cracks and splits, and the fragments fall into the gorge.
END_MESSAGE

#COMMENT
Player must wave rod while at "coral passage" or "bend in coral passage" to
get quicksand to harden.  If quicksand is not hard, then trying to pass
between these two locations will cause player to disappear into quicksand and
die.

After waving rod, quicksand will remain hard for only 5 turns, so player will
need to move across it quickly.

If the player is carrying either the giant clam or the giant oyster, he will
sink in the quicksand -- regardless of whether it is hard or not.
#END_COMMENT

COMMAND WAVE ROD
CounterGT [Quicksand is hard -- counter] 0
Present [black rod]
AtLocation [coral passage]
OR
AtLocation [bend in coral passage]
PrintMessage [Strange -- nothing happened!]
TurnCounterOFF [Quicksand is hard -- counter]
DoneWithTurn
END_COMMAND

COMMAND WAVE ROD
CounterEquals [Quicksand is hard -- counter] 0
Present [black rod]
AtLocation [coral passage]
OR
AtLocation [bend in coral passage]
PrintMessage [Strange -- nothing happened!]
TurnCounterON [Quicksand is hard -- counter]
DoneWithTurn
END_COMMAND

COMMAND WAVE ROD
Present [black rod]
FlagON [bridge exists]
AtLocation [east bank of fissure]
OR
AtLocation [west side of fissure]
TurnFlagOFF [bridge exists] ;crystal bridge now gone
PutInCurrentRoom [open fissure]
Destroy [crystal bridge]
Destroy [crystal bridge 2]
LookAtRoom
DoneWithTurn
END_COMMAND

COMMAND WAVE ROD
Present [black rod]
FlagOFF [bridge exists]
AtLocation [east bank of fissure]
OR
AtLocation [west side of fissure]
TurnFlagON [bridge exists] ;crystal bridge has suddenly appeared
SendToRoom [crystal bridge] [east bank of fissure]
SendToRoom [crystal bridge 2] [west side of fissure]
Destroy [open fissure]
LookAtRoom
DoneWithTurn
END_COMMAND

COMMAND WAVE FIGURE
InRoom [shadowy figure (right)]
OR
InRoom [shadowy figure (left)]
PrintMessage [You wave at figure]
DoneWithTurn
END_COMMAND

MESSAGE [You wave at figure]
You wave at the shadowy figure and it waves back at you.  The faster you wave,
the faster the figure waves.  Finally, you both stop as your arm gets tired.
END_MESSAGE

COMMAND WAVE ANY
PrintMessage [peculiar - nothing happens]
DoneWithTurn
END_COMMAND

;ATTACK/HIT/CHOP/CUT

COMMAND CHOP TREE
Present [dwarf's axe]
Present [Large trees]
SwapLocations [Large trees] [Fallen tree]
PrintMessage "Timber!"
PlusScore 10
DoneWithTurn
END_COMMAND

MESSAGE [Rabbit beats you]
The rabbit is a quite a bit bigger and stronger than you are.  He easily
counters you attack by repeatedly beating you over the head with his cane
before you can do him any damage.
END_MESSAGE

COMMAND ATTACK RABBIT
Present [Gigantic Rabbit]
PrintMessage [Rabbit beats you]
DoneWithTurn
END_COMMAND

COMMAND ATTACK GONG
ReDirectTo RING GONG
DoneWithTurn
END_COMMAND

COMMAND ATTACK BIRD
Present [little bird]
OR
Present [caged bird]
PrintMessage "Oh, leave the poor unhappy bird alone."
DoneWithTurn
END_COMMAND

COMMAND ATTACK TOAD
Present [horny toad]
PrintMessage "Peace, brother!  Make love not war!"
DoneWithTurn
END_COMMAND

COMMAND ATTACK SNAKE
FlagON [snake toggle] ;second COMMAND about SNAKE
Present [green snake]
PrintMessage [snake hint]
TurnFlagOFF [snake toggle] ;toggle for real message next
DoneWithTurn
END_COMMAND

MESSAGE [snake hint]
You can't kill the snake, or drive it away, or avoid it, or anything like
that.  There is a way to get by, but you don't have the necessary resources
right now.
END_MESSAGE

COMMAND ATTACK SNAKE
FlagOFF [snake toggle] ;first COMMAND about SNAKE
TurnFlagON [snake toggle] ;toggle for hint next
Present [green snake]
PrintMessage [attacking snake is dangerous]
DoneWithTurn
END_COMMAND

COMMAND ATTACK ANY
NOT NOUNpresent 
PrintMessage [That's silly]
DoneWithTurn
END_COMMAND

MESSAGE [That's silly]
Attempting to $verb$ the $noun$ is rather silly, since the $noun$ isn't
even here!  Perhaps you should seek medical help of some kind.
END_MESSAGE

COMMAND ATTACK ANY WITH ROD
Present [black rod]
PrintMessage [not a good weapon]
DoneWithTurn
END_COMMAND

COMMAND ATTACK ANY WITH LAMP
Present [ON lamp]
OR 
Present [OFF lamp] ;lamp
PrintMessage [not a good weapon]
DoneWithTurn
END_COMMAND

COMMAND ATTACK ANY WITH TRIDENT
Present [jeweled trident]
PrintMessage [not a good weapon]
DoneWithTurn
END_COMMAND

COMMAND ATTACK ANY WITH BOTTLE
Present [water bottle]
OR 
Present [empty bottle]
OR 
Present [oil bottle]
PrintMessage [not a good weapon]
DoneWithTurn
END_COMMAND

COMMAND KILL DJINN
Present [twelve-foot djinn]
PrintMessage [TOUGH.DJINN]
DoneWithTurn
END_COMMAND

MESSAGE [TOUGH.DJINN]
That's not a wise thing to try - djinni are essentially immortal and thus are
pretty hard to hurt.  Besides, this one seems rather friendly - why don't you
just try releasing him?
END_MESSAGE

COMMAND ATTACK GOBLIN
Present [gooseberry goblins]
PrintMessage [KILL.GOBLINS]
GoToRoom [Dead]
KillPlayer
DoneWithTurn
END_MESSAGE

MESSAGE [KILL.GOBLINS]
You attack the goblins and manage to squash a few, but the others overwhelm
you, forcing you to the ground and ripping out your throat.
END_MESSAGE

COMMAND ATTACK ROVER
Present [Rover]
PrintMessage [BOUNCE.BLOB]
DoneWithTurn
END_COMMAND

MESSAGE [BOUNCE.BLOB]
You attack the strange blob, but bounce harmlessly off of its strong but very
rubbery skin.
END_MESSAGE

COMMAND ATTACK BASILISK
Present [basilisk - north]
OR
Present [basilisk - south]
PrintMessage [HIT.BASILISK]
GoToRoom [Dead]
KillPlayer
DoneWithTurn
END_COMMAND

MESSAGE [HIT.BASILISK]
You attack the basilisk mightily.  It instantly awakens and looks you dead in
the eye, and your body turns to solid rock.
END_MESSAGE

COMMAND ATTACK OGRE WITH AXE
Present [ogre blocking your path]
PrintMessage [OGRE.CATCH]
GoToRoom [Dead]
KillPlayer
DoneWithTurn
END_COMMAND

MESSAGE [OGRE.CATCH]
The ogre casually catches the $noun$ in mid-air, braces his feet, winds up
and throws the $noun$ straight back at you with incredible force.  You are
unable to dodge it and it chops you in half.
END_MESSAGE

COMMAND ATTACK OGRE WITH SWORD
Present [ogre blocking your path]
Present [singing sword]
PrintMessage [OGRE.KILLED]
SendToRoom [singing sword] [nowhere]
SendToRoom [ogre blocking your path] [nowhere]
PutInCurrentRoom [mithril ring]
PlusScore 15
DoneWithTurn
END_COMMAND

MESSAGE [OGRE.KILLED]
The sword halts in mid-air, twirls like a dervish, and chants several bars of
"Dies Ire" in a rough tenor voice.  It then begins to spin like a rip-saw
blade and flies directly at the ogre, who attempts to catch it without
success; it strikes him full on the chest.  There is a brilliant flash of
light, a deafening roar and a cloud of oily gray smoke; when the smoke clears
(and your eyes begin working properly again) you see that the ogre has
vanished.  The sword is lying on the ground, sparking and flaming.  Before
your eyes it softens and melts, writhes as if in pain, and shrinks rapidly
until all that is left is a small silvery ring which cools rapidly.
END_MESSAGE

COMMAND ATTACK OGRE
Present [ogre blocking your path]
TurnFlagON [armed] ;not using bare hands for attack
PrintMessage [with bare hands?]
PromptForYES
TurnFlagOFF [armed]
PrintMessage [You attack the ogre]
DoneWithTurn
END_COMMAND

MESSAGE [You attack the ogre]
You attack the ogre, but he fends off your attack easily and comes very close
to crushing your skull with *his* bare (but extremely strong) hands.  You are
forced to retreat in disgrace.
END_MESSAGE

COMMAND ATTACK OGRE
FlagON [armed] ;not using bare hands for attack
TurnFlagOFF [armed]
PrintMessage [OGRE.RIPS.HEAD.OFF]
GoToRoom [Dead]
KillPlayer
DoneWithTurn
END_COMMAND

MESSAGE [OGRE.RIPS.HEAD.OFF]
You attack the ogre - a brave but foolish action.  He quickly grabs you and
with a heave of his mighty arms rips your body limb from limb.
END_MESSAGE

COMMAND ATTACK TROLL WITH AXE
Present [dwarf's axe]
Present [burly troll] ;troll demanding money
PrintMessage [troll catches axe & throws it back]
DoneWithTurn
END_COMMAND

COMMAND ATTACK TROLL
Present [burly troll]
PrintMessage [You attack the troll]
DoneWithTurn
END_COMMAND

MESSAGE [You attack the troll]
Trolls are close relatives with the rocks and have skin as tough as that of a
rhinoceros.  The troll fends off your blows effortlessly.
END_MESSAGE

COMMAND ATTACK CLAM
Present [giant clam]
PrintMessage [shell too hard]
DoneWithTurn
END_COMMAND

COMMAND ATTACK OYSTER
Present [giant oyster]
PrintMessage [shell too hard]
DoneWithTurn
END_COMMAND

COMMAND ATTACK DWARF WITH SWORD
Present [singing sword]
Present [little dwarf]
OR
Present [threatening dwarf]
PrintMessage [you kill dwarf]
Destroy [little dwarf]
Destroy [threatening dwarf]
DoneWithTurn
END_COMMAND

COMMAND ATTACK DWARF WITH AXE
Present [dwarf's axe]
Present [little dwarf]
OR
Present [threatening dwarf]
PrintMessage [you kill dwarf]
Destroy [little dwarf]
Destroy [threatening dwarf]
DoneWithTurn
END_COMMAND

COMMAND ATTACK DWARF
Present [little dwarf]
OR
Present [threatening dwarf]
TurnFlagON [armed] ;not using bare hands for attack
PrintMessage [with bare hands?]
PromptForYES
TurnFlagOFF [armed]
BlankLine
PrintMessage [dwarf dodges]
DoneWithTurn
END_COMMAND

COMMAND ATTACK DWARF
FlagON [armed] ;not using bare hands for attack
TurnFlagOFF [armed]
BlankLine
PrintMessage "You killed a little dwarf."
Destroy [little dwarf]
Destroy [threatening dwarf]
DoneWithTurn
END_COMMAND

COMMAND ATTACK BEAR WITH AXE
Present [ferocious bear]
Present [dwarf's axe]
PrintMessage [axe misses & lands near bear]
PutInCurrentRoom [dwarf's axe]
DoneWithTurn
END_COMMAND

COMMAND ATTACK BEAR
Present [ferocious bear]
PrintMessage "With what?  Your bare hands?  Against his BEAR hands??"
PrintMessage [don't be ridiculous]
DoneWithTurn
END_COMMAND

COMMAND ATTACK BEAR
Present [contented bear]
OR
Present [gentle bear]
PrintMessage [don't be ridiculous]
PrintMessage "The bear is confused; he only wants to be your friend."
DoneWithTurn
END_COMMAND

COMMAND ATTACK BASILISK
Present [petrified basilisk - north]
OR
Present [petrified basilisk - south]
PrintMessage [For crying out loud, the poor thing is already dead!]
DoneWithTurn
END_COMMAND

COMMAND ATTACK DRAGON
Present [dead dragon]
PrintMessage [For crying out loud, the poor thing is already dead!]
DoneWithTurn
END_COMMAND

MESSAGE [For crying out loud, the poor thing is already dead!]
For crying out loud, the poor thing is already dead!
END_MESSAGE

COMMAND ATTACK DRAGON WITH AXE
Present [green dragon]
Present [dwarf's axe]
PrintMessage [axe bounces off dragon]
PutInCurrentRoom [dwarf's axe]
DoneWithTurn
END_COMMAND

COMMAND ATTACK DRAGON
Present [green dragon]
TurnFlagON [armed] ;not using bare hands for attack
PrintMessage [with bare hands?]
PromptForYES
TurnFlagOFF [armed]
BlankLine
PrintMessage [You attack the dragon]
SwapLocations [green dragon] [dead dragon]
SwapLocations [dragon on fake rug] [dragon's teeth]
PlusScore 10
DoneWithTurn
END_COMMAND

MESSAGE [You attack the dragon]
Congratulations!  You have just vanquished a dragon with your bare hands!
(Unbelievable, Isn't it?)
END_MESSAGE

COMMAND ATTACK DRAGON
FlagON [armed] ;not using bare hands for attack
TurnFlagOFF [armed]
BlankLine
PrintMessage [don't be ridiculous]
PrintMessage [better not]
DoneWithTurn
END_COMMAND

COMMAND ATTACK ANY
PrintMessage [don't be ridiculous]
DoneWithTurn
END_COMMAND

;ABRACADABRA

COMMAND ABRACADABRA
PrintMessage "Good try, but $VERB$ is an old worn-out magic word."
DoneWithTurn
END_COMMAND

;DIG/EXCAVATE

MESSAGE [Don't have the proper tool]
Digging without a shovel is quite impractical.  Even with a shovel progress is
unlikely.
END_MESSAGE

COMMAND DIG
NOT Present [Shovel]
PrintMessage [Don't have the proper tool]
DoneWithTurn
END_COMMAND

COMMAND DIG
AtLocation [on the beach]
Present [Large X]
SwapLocations [Large X] [Small Hole]
PrintMessage "You manage to dig a small hole where the X was."
DoneWithTurn
END_COMMAND

COMMAND DIG
AtLocation [on the beach]
Present [Small Hole]
SwapLocations [Large Hole] [Small Hole]
PrintMessage "The hole is now considerably bigger."
DoneWithTurn
END_COMMAND

COMMAND DIG
AtLocation [on the beach]
Present [Large Hole]
SwapLocations [Large Hole] [Gigantic Hole]
PrintMessage "The hole is now gigantic."
DoneWithTurn
END_COMMAND

MESSAGE [You slip down the sandy side of the hole]
The sandy is very unstable and you lose your footing and tumble head over
heels to the bottom of the hole.  You will never be able to climb back up
out of the hole.
END_MESSAGE

COMMAND DIG
AtLocation [on the beach]
Present [Gigantic Hole]
GoToRoom [Bottom of hole]
PrintMessage [You slip down the sandy side of the hole]
DoneWithTurn
END_COMMAND

MESSAGE [You break through]
You begin to dig furiously in the sand.  All of a sudden, your shovel breaks
through into empty space.  The sand crumbles around the sides of the hole and
you fall into the hole.  Fortunately, enough sand fell before you did to
cushion your fall as you land on a mound of sand.
END_MESSAGE

COMMAND DIG
AtLocation [Bottom of Hole]
GoToRoom [Shaft Room]
TurnFlagON [Has dug in bottom of hole]
PrintMessage [You break through]
PlusScore 10
DoneWithTurn
END_COMMAND

COMMAND DIG
NOT AtLocation [Bottom of Hole]
NOT AtLocation [on the beach]
PrintMessage "The ground is too hard to dig."
DoneWithTurn
END_COMMAND

;WAKE/CALM

COMMAND WAKE
Present [basilisk - north]
OR
Present [basilisk - south]
PrintMessage [BAS.GRUMBLE]
DoneWithTurn
END_COMMAND

COMMAND CALM ANY
PrintMessage [I'm game]
DoneWithTurn
END_COMMAND

;BREAK/BLAST/DYNAMITE 

COMMAND BREAK VIAL
Present [vial of oily liquid]
SendToRoom [vial of oily liquid] [nowhere]
PrintMessage [VIAL.BANG]
TurnFlagON [Vial has exploded]
END_COMMAND

COMMAND BREAK VIAL
FlagON [Vial has exploded]
Present [green slime]
PrintMessage [break vial on slime]
SendToRoom [green slime] [nowhere]
END_COMMAND

MESSAGE [break vial on slime]
The slime filling the passage to the south blackens and shrivels away into
nothingness.
END_MESSAGE

COMMAND BREAK VIAL
FlagON [Vial has exploded]
Present [gooseberry goblins]
SendToRoom [gooseberry goblins] [nowhere]
PrintMessage [break vial on goblins]
END_COMMAND

MESSAGE [break vial on goblins]
The gooseberry goblins sniff the vapor, screech in terror, and dash off into
the distance.
END_MESSAGE

COMMAND BREAK VIAL
FlagON [Vial has exploded]
Present [twelve-foot djinn]
PrintMessage [break vial on djinn]
END_COMMAND

MESSAGE [break vial on djinn]
The djinn takes a deep sniff of the vapor and comments, "AH!  A TRULY FINE
ARABIAN PERFUME!  I HAVEN'T SMELLED ANYTHING LIKE THAT FOR YEARS!"
END_MESSAGE

COMMAND BREAK VIAL
FlagON [Vial has exploded]
Present [petrified basilisk - north]
OR
Present [petrified basilisk - south]
PrintMessage "The basilisk doesn't wake up."
END_COMMAND

COMMAND BREAK VIAL
FlagON [Vial has exploded]
FlagON [Dwarf here]
PrintMessage [break vial on dwarf]
Destroy [little dwarf]
Destroy [threatening dwarf]
END_COMMAND

MESSAGE [break vial on dwarf]
The dwarf catches a lungful of the cloud, gags audibly and stumbles out of the
room retching, sneezing, and cursing up a storm.
END_MESSAGE

COMMAND BREAK VIAL
FlagON [Vial has exploded]
Present [burly troll]
PrintMessage "The troll calmly waves the vapor away."
END_COMMAND

COMMAND BREAK VIAL
FlagON [Vial has exploded]
Present [ferocious bear]
PrintMessage "The bear inhales some of the vapor and snarls angrily."
END_COMMAND

COMMAND BREAK VIAL
FlagON [Vial has exploded]
Present [contented bear]
OR
Present [gentle bear]
PrintMessage "The bear inhales some of the vapor and moans appreciatively."
END_COMMAND

COMMAND BREAK VIAL
FlagON [Vial has exploded]
Present [green snake]
PrintMessage "The snake completely ignores the vapor."
END_COMMAND

COMMAND BREAK VIAL
FlagON [Vial has exploded]
Present [caged bird]
OR
Present [little bird]
PrintMessage [break vial on bird]
END_COMMAND

MESSAGE [break vial on bird]
The bird breathes in a minuscule amount of the vapor and immediately sings a
twenty-second segment of Morton Subotnik's "Sidewinder".
END_MESSAGE

COMMAND BREAK VIAL
FlagON [Vial has exploded]
Present [green dragon]
PrintMessage [break vial on dragon]
END_COMMAND

MESSAGE [break vial on dragon]
The dragon sniffs the air, rumbles deep in his chest, and shoots out a small
puff of flame that ignites and incinerates the vapor.
END_MESSAGE

COMMAND BREAK VIAL
FlagON [Vial has exploded]
TurnFlagOFF [Vial has exploded]
DoneWithTurn
END_COMMAND

COMMAND BREAK VASE
Present [ming vase]
Destroy [ming vase]
PutInCurrentRoom [pottery shards]
PrintMessage [vase drops]
LookAtRoom
DoneWithTurn
END_COMMAND

COMMAND BREAK MIRROR
AtLocation [mirror canyon]
PrintMessage [You break mirror]
MinusScore 10 ;lose 10 points for dying
GoToRoom [Dead]
KillPlayer
DoneWithTurn
END_COMMAND

MESSAGE [You break mirror]
You strike the mirror a resounding blow, whereupon it shatters into a myriad
tiny fragments.

The resulting ruckus has attracted the dwarves.  There are now several
threatening little dwarves in the room with you!  Most of them throw knives at
you!  All of them get you!
END_MESSAGE

COMMAND BREAK BOTTLE
PrintMessage "It is beyond your power to do that."
DoneWithTurn
END_COMMAND

COMMAND BLAST ANY
PrintMessage "To $verb$ the $noun$ requires dynamite."
DoneWithTurn
END_COMMAND

;THROW/GIVE

MESSAGE [Rabbit thanks you]
The rabbit is delighted that you have returned his foot.  He puts it back
on to his hind leg and hops off into his warren.  He leaves his cane behind.
END_MESSAGE

COMMAND GIVE FOOT TO RABBIT
Present [Gigantic Rabbit]
Present [Rabbit's Foot]
PrintMessage [Rabbit thanks you]
Destroy [Gigantic Rabbit]
Destroy [Rabbit's Foot]
DropIt [Cane]
DoneWithTurn
END_COMMAND

COMMAND GIVE FOOD TO ANY
Present [tasty food]
OBJECTPresent
ReDirectTo FEED $OBJECT$
DoneWithTurn
END_COMMAND

COMMAND GIVE APPLE TO ANY
Present [apple]
OBJECTPresent
ReDirectTo FEED $OBJECT$
DoneWithTurn
END_COMMAND

COMMAND THROW ANY
NOUNPresent (* any noun *)
AtLocation [R30  North Ledge]
DestroyNOUN (* any noun *)
TurnFlagON [Player has thrown something into chasm]
PrintMessage "The $noun$ disappears into the chasm."
DoneWithTurn (* no further action -- get next input *)
END_COMMAND

COMMAND THROW ANY AT BASILISK
Present [petrified basilisk - north]
OR
Present [petrified basilisk - south]
PrintMessage [THROW.AT.BASILISK]
GoToRoom [Dead]
KillPlayer
DoneWithTurn
END_COMMAND

MESSAGE [THROW.AT.BASILISK]
The $noun$ rebounds harmlessly from the basilisk's tough scales.  The basilisk
awakens, grunting in shock, and glares at you.  You are instantly turned into
a solid rock statue (and not a particularly impressive one, at that).
END_MESSAGE

COMMAND THROW ANY AT DJINN
Present [twelve-foot djinn]
DropNOUN
PrintMessage [REBOUND]
DoneWithTurn
END_COMMAND

MESSAGE [REBOUND]
The $noun$ rebounds harmlessly from the pentagram's magic force field.  It's
just as well - the djinn doesn't seem dangerous.
END_MESSAGE

COMMAND THROW OIL AT DWARF
FlagON [Dwarf here]
PrintMessage [DOUSED.DWARF]
DoneWithTurn
END_COMMAND

COMMAND THROW WATER AT DWARF
FlagON [Dwarf here]
PrintMessage [DOUSED.DWARF]
DoneWithTurn
END_COMMAND

MESSAGE [DOUSED.DWARF]
The $noun$ flies through the air and thoroughly drenches the dwarf.  He shakes
himself off and curses violently; he *REALLY* looks angry!
END_MESSAGE

COMMAND THROW ANY AT GOBLIN
Present [gooseberry goblins]
PrintMessage [KILL.A.FEW]
GoToRoom [Dead]
KillPlayer
DoneWithTurn
END_MESSAGE

MESSAGE [KILL.A.FEW]
You kill several of the gooseberry goblins with the $noun$, but the others
swarm at you, force you to the ground, and rip out your throat.
END_MESSAGE

COMMAND THROW FLASK
AtLocation [pentagram room]
Present [earthenware flask - closed]
DropIt [earthenware flask - sealed]
Destroy [earthenware flask - closed]
PrintMessage [You set the flask in the pentragram]
DoneWithTurn
END_COMMAND

COMMAND THROW VIAL
Present [vial of oily liquid]
ReDirectTo BREAK VIAL
END_COMMAND

COMMAND THROW TEETH
Present [dragon's teeth]
Present [gooseberry goblins]
PrintMessage [WARRIORS]
SendToRoom [dragon's teeth] [nowhere]
SendToRoom [gooseberry goblins] [nowhere]
TurnFlagON [Goblins have appeared]
TurnCounterOFF [Goblin counter]
PlusScore 15
DoneWithTurn
END_COMMAND

MESSAGE [WARRIORS]
As each of the dragon's teeth strikes the ground, a fully-armed human skeleton
springs up from where it struck and leaps to your defense!  The skeletal
warriors attack the vicious gooseberry goblins and drive them away in
screaming panic; they then salute you with their ancient and rusty swords, and
fade silently into nothingness.
END_MESSAGE

COMMAND THROW ANY
Present [ogre blocking your path]
ReDirectTo ATTACK OGRE WITH $NOUN$
DoneWithTurn
END_COMMAND

COMMAND THROW ANY AT ROVER
Present [Rover]
PrintMessage [SLICE.BLOB]
DoneWithTurn
END_COMMAND

MESSAGE [SLICE.BLOB]
The $noun$ slices clear through the blob's body (?) without harming it.
END_MESSAGE

COMMAND THROW BEAR
InRoom [burly troll]
Present [contented bear]
SwapLocations [burly troll] [phony troll] ;troll is nowhere to be seen
PrintMessage [bear chases troll]
TurnFlagON [troll eliminated]
TurnFlagOFF [bear following]
PlusScore 10
DoneWithTurn
END_COMMAND

COMMAND THROW AXE
Present [dwarf's axe]
Present [little dwarf]
OR
Present [threatening dwarf]
TurnFlagON [axe/knife] ;throwing axe at dwarf
PutInCurrentRoom [dwarf's axe]
Chance 50
PrintMessage [you kill dwarf]
TurnFlagOFF [axe/knife]
Destroy [little dwarf]
Destroy [threatening dwarf]
DoneWithTurn
END_COMMAND

COMMAND THROW AXE
FlagON [axe/knife] ;has already thrown axe at dwarf
PrintMessage [dwarf dodges]
PrintMessage "It misses!"
TurnFlagOFF [axe/knife]
LookAtRoom
DoneWithTurn
END_COMMAND

COMMAND THROW AXE
Present [burly troll]
PrintMessage [troll catches axe & throws it back]
PutInCurrentRoom [dwarf's axe]
LookAtRoom
DoneWithTurn
END_COMMAND

COMMAND THROW AXE
Present [ferocious bear]
Present [dwarf's axe]
PrintMessage [axe misses & lands near bear]
PutInCurrentRoom [dwarf's axe]
DoneWithTurn
END_COMMAND

COMMAND THROW AXE
Present [green dragon]
Present [dwarf's axe]
PrintMessage [axe bounces off dragon]
PutInCurrentRoom [dwarf's axe]
DoneWithTurn
END_COMMAND

COMMAND THROW AXE
Present [giant clam]
OR
Present [giant oyster]
PrintMessage [shell too hard]
DoneWithTurn
END_COMMAND

COMMAND THROW FOOD
Present [ferocious bear]
Present [tasty food]
PrintMessage [bear eats food]
Destroy [tasty food]
SwapLocations [ferocious bear] [gentle bear] ;bear becomes friendly
PlusScore 10
DoneWithTurn
END_COMMAND

COMMAND THROW FOOD
Present [burly troll]
Present [tasty food]
PrintMessage [troll wants treasure]
DoneWithTurn
END_COMMAND

COMMAND THROW FOOD
Present [tasty food]
Present [green dragon]
OR
Present [green snake]
PrintMessage [it doesn't want food - except you]
DoneWithTurn
END_COMMAND

COMMAND THROW FOOD
Present [tasty food]
Present [little dwarf]
OR
Present [threatening dwarf]
PrintMessage [dwarves eat coal]
DoneWithTurn
END_COMMAND

COMMAND THROW FOOD
Present [little bird]
Present [tasty food]
PrintMessage [it isn't hungry]
DoneWithTurn
END_COMMAND

COMMAND THROW ANY
Present [burly troll]
NOUNpointsGT 0 ;Noun is a treasure - i.e., it has value
PrintMessage "The troll catches your treasure and scurries away out of sight."
DestroyNOUN
SwapLocations [burly troll] [phony troll]
TurnFlagON [troll eliminated]
DoneWithTurn
END_COMMAND

COMMAND THROW ANY
Present [burly troll]
PrintMessage [The troll catches the $noun$]
DoneWithTurn
END_COMMAND

MESSAGE [The troll catches the $noun$]
The troll catches the $noun$, examines it closely and then throws it
back to you.  "That's worthless, fool!!  Give me something of value or you
will never get across my bridge," he says angrily.
END_MESSAGE

COMMAND THROW VASE
InRoom [velvet pillow]
Present [ming vase]
SwapLocations [velvet pillow] [vase on pillow]
Destroy [ming vase]
PrintMessage [vase drops]
PrintMessage [didn't break]
DoneWithTurn
END_COMMAND

COMMAND THROW VASE
NOT InRoom [velvet pillow]
Present [ming vase]
Destroy [ming vase]
PutInCurrentRoom [pottery shards]
PrintMessage [vase drops]
LookAtRoom
DoneWithTurn
END_COMMAND

COMMAND THROW BIRD
ReDirectTo RELEASE BIRD
END_COMMAND

COMMAND THROW ANY
AtLocation [top of small pit]
PrintMessage [THROW.PIT]
SendNOUNToRoom [hall of mists]
DoneWithTurn
END_COMMAND

COMMAND THROW ANY
AtLocation [east bank of fissure]
OR
AtLocation [west side of fissure]
PrintMessage [THROW.FISSURE]
SendNOUNToRoom [cavern with waterfall]
DoneWithTurn
END_COMMAND

COMMAND THROW ANY
AtLocation [W end of twopit room]
PrintMessage [THROW.PIT]
SendNOUNToRoom [west pit]
DoneWithTurn
END_COMMAND

COMMAND THROW ANY
AtLocation [E end of twopit room]
PrintMessage [THROW.PIT]
SendNOUNToRoom [east pit]
DoneWithTurn
END_COMMAND

COMMAND THROW ANY
AtLocation [low N-S passage]
PrintMessage [THROW.HOLE]
SendNOUNToRoom [dirty passage]
DoneWithTurn
END_COMMAND

COMMAND THROW ANY
AtLocation [right low window]
PrintMessage [THROW.PIT]
SendNOUNToRoom [mirror canyon]
DoneWithTurn
END_COMMAND

COMMAND THROW ANY
AtLocation [left low window]
PrintMessage [THROW.PIT]
SendNOUNToRoom [mirror canyon]
DoneWithTurn
END_COMMAND

COMMAND THROW ANY
AtLocation [brink of small pit]
PrintMessage [THROW.PIT]
SendNOUNToRoom [bottom of small pit]
DoneWithTurn
END_COMMAND

COMMAND THROW ANY
AtLocation [dusty rock room]
PrintMessage [THROW.HOLE]
SendNOUNToRoom [complex junction]
DoneWithTurn
END_COMMAND

COMMAND THROW ANY
AtLocation [brink of 30' pit]
PrintMessage [THROW.PIT]
SendNOUNToRoom [bird chamber]
DoneWithTurn
END_COMMAND

COMMAND THROW ANY
AtLocation [north-south canyon above room]
PrintMessage [THROW.ROOM]
SendNOUNToRoom [slab room]
DoneWithTurn
END_COMMAND

COMMAND THROW ANY
AtLocation [north-south canyon above passage]
PrintMessage [THROW.ROOM]
SendNOUNToRoom [bedquilt room]
DoneWithTurn
END_COMMAND

COMMAND THROW ANY
AtLocation [secret E-W canyon]
PrintMessage [THROW.CANYON]
SendNOUNToRoom [wide place]
DoneWithTurn
END_COMMAND

COMMAND THROW ANY
AtLocation [above large room]
PrintMessage [THROW.ROOM]
SendNOUNToRoom [large low room]
DoneWithTurn
END_COMMAND

COMMAND THROW ANY
AtLocation [cavern with waterfall]
PrintMessage [THROW.WHIRLPOOL]
SendNOUNToRoom [nowhere]
DoneWithTurn
END_COMMAND

COMMAND THROW ANY
AtLocation [misty cavern]
PrintMessage [THROW.CAVERN]
SendNOUNToRoom [cavern with waterfall]
DoneWithTurn
END_COMMAND

COMMAND THROW ANY
AtLocation [top of stalactite]
PrintMessage [THROW.ROOM]
SendNOUNToRoom [twisty 53]
DoneWithTurn
END_COMMAND

COMMAND THROW ANY
AtLocation  [reservoir]
OR
AtLocation  [N end of reservoir]
PrintMessage [THROW.RESERVOIR]
SendNOUNToRoom [nowhere]
DoneWithTurn
END_COMMAND

COMMAND THROW ANY
AtLocation [balcony]
PrintMessage [THROW.ROOM]
SendNOUNToRoom [nowhere]
DoneWithTurn
END_COMMAND

COMMAND THROW ANY
AtLocation [SW chasm]
PrintMessage [THROW.CHASM]
SendNOUNToRoom [nowhere]
DoneWithTurn
END_COMMAND

COMMAND THROW ANY
AtLocation [NE chasm]
PrintMessage [THROW.CHASM]
SendNOUNToRoom [nowhere]
DoneWithTurn
END_COMMAND

COMMAND THROW ANY
AtLocation [breath-taking view]
PrintMessage [THROW.GORGE]
SendNOUNToRoom [nowhere]
DoneWithTurn
END_COMMAND

COMMAND THROW ANY
AtLocation [S end of Stone Faces]
PrintMessage [THROW.GORGE]
SendNOUNToRoom [nowhere]
DoneWithTurn
END_COMMAND

COMMAND THROW ANY
AtLocation [lava tube]
PrintMessage [THROW.CHIMNEY]
SendNOUNToRoom [bottom of chimney]
DoneWithTurn
END_COMMAND

COMMAND THROW ANY
AtLocation [steep slide in lava tube]
PrintMessage [THROW.TUBE]
SendNOUNToRoom [S end of fog-filled room]
DoneWithTurn
END_COMMAND

COMMAND THROW ANY
AtLocation [passage by steps]
PrintMessage [THROW.STEPS]
SendNOUNToRoom [on steps]
DoneWithTurn
END_COMMAND

COMMAND THROW ANY
AtLocation [on steps]
PrintMessage [THROW.STEPS]
SendNOUNToRoom [exit from steps]
DoneWithTurn
END_COMMAND

COMMAND THROW ANY
AtLocation [exit from steps]
PrintMessage [THROW.STEPS]
SendNOUNToRoom [storage room]
DoneWithTurn
END_COMMAND

COMMAND THROW ANY
AtLocation [at brink of bottomless pit]
PrintMessage [THROW.PIT]
SendNOUNToRoom [nowhere]
DoneWithTurn
END_COMMAND

COMMAND THROW ANY
AtLocation [southern edge of bottomless pit]
PrintMessage [THROW.PIT]
SendNOUNToRoom [nowhere]
DoneWithTurn
END_COMMAND

COMMAND THROW ANY
AtLocation [ice room]
PrintMessage [THROW.SLIDE]
SendNOUNToRoom [bottom of icy slide]
DoneWithTurn
END_COMMAND

COMMAND THROW ANY
AtLocation [eastern edge of bottomless pit]
PrintMessage [THROW.PIT]
SendNOUNToRoom [nowhere]
DoneWithTurn
END_COMMAND

COMMAND THROW ANY
AtLocation [shelf of rock above beach]
PrintMessage [THROW.BEACH]
SendNOUNToRoom [on the beach]
DoneWithTurn
END_COMMAND

COMMAND THROW ANY
AtLocation [tiny platform above volcano]
PrintMessage [THROW.GORGE]
SendNOUNToRoom [nowhere]
DoneWithTurn
END_COMMAND

MESSAGE [THROW.PIT]
You have tossed the $noun$ down into the pit.
END_MESSAGE

MESSAGE [THROW.FISSURE]
You have thrown the $noun$ down into the fissure.
END_MESSAGE

MESSAGE [THROW.HOLE]
You have tossed the $noun$ down into the hole in the floor.
END_MESSAGE

MESSAGE [THROW.ROOM]
You have tossed the $noun$ down into the room below you.
END_MESSAGE

MESSAGE [THROW.CANYON]
You have tossed the $noun$ down into the canyon beneath your feet.
END_MESSAGE

MESSAGE [THROW.WHIRLPOOL]
You have hurled the $noun$ into the middle of the whirlpool.
END_MESSAGE

MESSAGE [THROW.CAVERN]
You have thrown the $noun$ down into the mist filling the cavern.
END_MESSAGE

MESSAGE [THROW.CHASM]
You have hurled the $noun$ down into the misty bottom of the chasm.
END_MESSAGE

MESSAGE [THROW.GORGE]
You have hurled the $noun$ down into the boiling lava at the bottom of the
volcanic gorge.
END_MESSAGE

MESSAGE [THROW.CHIMNEY]
You have tossed the $noun$ down the chimney.
END_MESSAGE

MESSAGE [THROW.TUBE]
You have tossed the $noun$ down into the lava tube and out of sight.
END_MESSAGE

MESSAGE [THROW.STEPS]
You have thrown the $noun$ down the steps and out of view.
END_MESSAGE

MESSAGE [THROW.SLIDE]
You have tossed the $noun$ down the icy slide and out of sight.
END_MESSAGE

MESSAGE [THROW.BEACH]
You have thrown the $noun$ down onto the beach.
END_MESSAGE

MESSAGE [THROW.RESERVOIR]
You have negligently tossed the $noun$ into the center of the reservoir.
END_MESSAGE

;FEED

COMMAND FEED GOBLIN
Present [gooseberry goblins]
PrintMessage [GOBL.EAT.YOU]
DoneWithTurn
END_MESSAGE

MESSAGE [GOBL.EAT.YOU]
Goblins live exclusively on human flesh, and you can't spare any of your own
to placate them.  On the other hand, I suspect that they're going to eat you
pretty soon whether you like it or not - you'd better find some way of killing
them or driving them away!
END_MESSAGE

COMMAND FEED BEAR
Present [ferocious bear]
Present [tasty food]
PrintMessage [bear eats food]
Destroy [tasty food]
SwapLocations [ferocious bear] [gentle bear]
PlusScore 10
DoneWithTurn
END_COMMAND

COMMAND FEED BEAR
Present [ferocious bear]
Present [apple]
PrintMessage [bear eats food]
Destroy [apple]
SwapLocations [ferocious bear] [gentle bear]
PlusScore 10
DoneWithTurn
END_COMMAND

COMMAND FEED BEAR
NOT Present [tasty food]
NOT Present [apple]
PrintMessage [it doesn't want food - except you]
DoneWithTurn
END_COMMAND

COMMAND FEED TROLL
Present [burly troll]
PrintMessage [troll wants treasure]
DoneWithTurn
END_COMMAND

COMMAND FEED DRAGON
Present [green dragon]
PrintMessage [it doesn't want food - except you]
DoneWithTurn
END_COMMAND

COMMAND FEED SNAKE
Present [green snake]
Present [caged bird]
PrintMessage [snake eats bird]
SwapLocations [wicker cage] [caged bird]
DoneWithTurn
END_COMMAND

COMMAND FEED SNAKE
Present [green snake]
PrintMessage [it doesn't want food - except you]
DoneWithTurn
END_COMMAND

COMMAND FEED DWARF
Present [little dwarf]
OR
Present [threatening dwarf]
PrintMessage [dwarves eat coal]
DoneWithTurn
END_COMMAND

COMMAND FEED BIRD
Present [little bird]
OR
Present [caged bird]
PrintMessage [it isn't hungry]
DoneWithTurn
END_COMMAND

COMMAND FEED ANY
PrintMessage [I'm game]
DoneWithTurn
END_COMMAND

#COMMENT ------- SWIM

COMMAND SWIM
AtLocation [cavern with waterfall]
#COMMENT -- going into whirlpool
PrintMessage "Remember you can't swim!  Are you sure you really want to dive down"
BlankLine
ReDirectTo DOWN
END_COMMAND

COMMAND SWIM
PrintMessage [DONT.KNOW.HOW 2]
DoneWithTurn
END_MESSAGE

MESSAGE [DONT.KNOW.HOW 2]
Sorry, but I don't know how to $verb$!
END_MESSAGE

#COMMENT -- EAT

#COMMENT
Eating a mushroom will give you special strength for 12 turns.  After 12
turns, your strength returns to normal -- but the mushroom grows back in the
"dank cubicle" where you originally found it -- so it you strength can be
repeatedly enhanced.
#END_COMMENT

COMMAND EAT MUSHROOM
Present [small mushroom]
OR
Present [small mushroom - growing]
Destroy [small mushroom]
Destroy [small mushroom - growing]
PrintMessage [You get strong]
TurnCounterON [Mushroom strength counter]
TurnFlagON [Player is very strong]
DoneWithTurn
END_COMMAND

MESSAGE [You get strong]
As you swallow the mushroom your mouth becomes numb, and everything seems to
swirl around you.  The effect quickly passes, and you find that your muscles
have bulged unbelievably.
END_MESSAGE

COMMAND EAT FOOD
Present [tasty food]
PrintMessage [it was delicious]
Destroy [tasty food]
DoneWithTurn
END_COMMAND

COMMAND EAT ANY
NOUNPresent
NOT NOUNIsEdible
PrintMessage [BLEAH]
DoneWithTurn
END_MESSAGE

MESSAGE [BLEAH]
Yeetttch!  I think I just lost my appetite.
END_MESSAGE

;FILL

COMMAND FILL ANY
NOT NOUNIsCarrying
PrintMessage [don't have the resources]
DoneWithTurn
END_COMMAND

COMMAND FILL
AtLocation [on the beach]
PrintMessage [SALT.H20.BAD]
DoneWithTurn
END_COMMAND

COMMAND FILL VASE
Present [ming vase]
Destroy [ming vase]
PutInCurrentRoom [pottery shards]
PrintMessage "The sudden change in temperature has delicately shattered the vase."
LookAtRoom
DoneWithTurn
END_COMMAND

COMMAND FILL PITCHER WITH WATER
ReDirectTo GET WATER
END_COMMAND

COMMAND FILL BOTTLE
FlagON [bottle full]
PrintMessage [already full]
DoneWithTurn
END_COMMAND

COMMAND FILL BOTTLE
NOT Present [empty bottle]
PrintMessage [nothing to put it in]
DoneWithTurn
END_COMMAND

COMMAND FILL BOTTLE
FlagON [Water here]
PrintMessage [bottle now full of water]
SwapLocations [empty bottle] [water bottle]
TurnFlagON [bottle full]
DoneWithTurn
END_COMMAND

COMMAND FILL BOTTLE
AtLocation [east pit] ;east pit of twopit room
PrintMessage [bottle now full of oil]
SwapLocations [empty bottle] [oil bottle]
TurnFlagON [bottle full]
DoneWithTurn
END_COMMAND

COMMAND FILL BOTTLE
PrintMessage [no liquid here]
DoneWithTurn
END_COMMAND

COMMAND FILL ANY
PrintMessage "You can't fill that."
DoneWithTurn
END_COMMAND

#COMMENT -- RIDE

#COMMENT
From the "N end of reservoir", the player must RING GONG to get Darwin to
appear.  Then he can RIDE DARWIN to cross the reservoir to the south end.
#END_COMMENT

COMMAND RIDE DARWIN
AtLocation [N end of reservoir]
Present [Darwin the turtle]
PrintMessage [TURTLE.BACK]
SendToRoom [Darwin the turtle] [nowhere]
GoToRoom  [reservoir]
DoneWithTurn
END_COMMAND

#COMMENT -- RING

MESSAGE [1st Bell Ring]
A few moments after you ring the bell, you hear a voice cry out, "Hold your
horses, I'm coming........damn tourists..."  A little old man in a red velvet
suit appears on the other side of the gates.  He produces a key from a pocket
of his coat and unlocks the gate.

"Welcome to the 12592nd level of Hell.  My name is Fred and I will be your
guide for today's tour", he says.

"This level of Hell is reserved for Adventure game writers.  Here, we
specialize in giving these cruel people some of the same kind of torment that
they gave to those unfortunates that played their fiendish creations.  It
doesn't matter that the game players played willingly -- in their quest for
masochistic pleasures.  No!  No!  No!  Just because the victim is foolish
enough to think he or she is enjoying the experience, doesn't make the crime
any less heinous.  These wicked Adventure game writers were no better than
drug pushers preying on the mental weaknesses of Adventure junkies."

"Remember, as you tour this level of Hell that these people deserve their
eternal torment!  They are just being repaid for the misery they have give to
others.  Do not pity them.  Save you pity for their unfortunate victims!"

With that introduction finished, Fred begins the tour.  You follow him down a
long winding path.  You finally stop by the edge of a cliff.  In the distance
below you is a dark labyrinth of high thorny hedges.  In the middle of the
labyrinth, you can see two figures groping along the hedge walls.  As they
reach out to touch the hedges, they recoil in pain from touching the thorns.

Fred chuckles.  "Those guys are Will Crowther and Don Woods.  They started it
all by writing the first Adventure game -- called simply ADVENTURE.  They are
now doomed to search in the dark through a maze of twisty little passages.
They are trying to find the vending machine to buy some batteries for their
lantern.  They will search forever -- in vain.  A fitting punishment, don't
you agree?"

Fred chuckles again and wanders down the path to the north.  After a few
minutes you arrive at a pleasant sunny meadow.  Off to the south at the edge
of the meadow is a swampy area.  In the middle of the swamp, buried in the mud
is a very strange sight.  A bearded man is trapped under a sleeping dragon.
He alternates between trying to wake the dragon and trying to dig himself free
in the mud.  He continues to struggle, but to no avail.

Fred explains, "That is Scott Adams.  He wrote ADVENTURELAND, PIRATE ADVENTURE
and many, many others.  His Adventure games were the first written for
microcomputers.  Now, he is getting a taste of his own medicine."

"Let's move on."  Fred proceeds to walk to the east.  The ground rises gently
until you find yourself overlooking a deep chasm.  On one side of the chasm
you see a man.  Directly across from him is a woman.  Both are shouting secret
words with very hoarse voices.  They continue to shout out every silly word
imaginable.  There doesn't seem to be any result from their efforts except
their voices get hoarser.

"Ken and Roberta Williams.  They wrote THE WIZARD AND THE PRINCESS, and KING'S
QUEST I, II, III, IV, V, VI, VII, VIII, etc." explains Fred.  "After they
discover the correct secret word, Artichoke, they will get to ride in a leaky
boat with no way to fix the leak."  He chuckles again.

You follow Fred as he continues on the path to the south.  You finally come to
an old house and enter through a broken window.  Fred lifts a rug, brush aside
some leaves and you both peek into a dark room through a small grate.  Below,
you see two men trapped in a brick-walled room.  There are no doors or windows
in the room.  The only exit is the grate and it is locked on the outside.
However, even if the grate was unlocked it would do no good, as both men are
too big to fit through the grate.

"The only way out of the room is by saying the word 'Ahriman'.  Ahriman was
one of the gods of Zoroastrian mythology", Fred whispers.  "After they figure
that one out, we have some really hard puzzles for them.  They are Dave
Lebling and Marc Blank.  They wrote the ZORK series.  You know those, of
course, -- ZORK I, ZORK II, ZORK III, ZORK ZERO, BEYOND ZORK, INSIDE ZORK,
OUTSIDE ZORK, UNDER ZORK, SON OF ZORK, RETURN TO ZORK, BRIDE OF ZORK, 2ND
COUSIN OF ZORK, ZORK MINUS 47, IN SEARCH OF ZORK, ZORK'S REVENGE, ZORK -- THE
SEQUEL, THE HITCHHIKER'S GUIDE TO ZORK, NIGHT OF THE LIVING ZORK, THE
ESSENTIAL ZORK, THE NON-ESSENTIAL ZORK, ZORK TRIVIA, ZORK CONFIDENTIAL, THE
VALLEY OF ZORK, IT CAME FROM ZORK, TALES OF ZORK, THE CREATURE FROM ZORK, ZORK
UNCHAINED, ZORK OBSERVED, THE COMPLEAT ZORK, et al.  For all the pain they have
caused Adventure game players, these two deserve some really terrible
punishment, but there are some things that are even too nasty and gross for
Hell."

Fred puts the leaves back over the grate, puts the rug over the leaves, and
then leads you outside the house.  You continue the tour for the remainder of
the afternoon.  Finally, exhausted, you return to the entrance gate.

"Well, I hope you have enjoyed the tour of level 12592 of Hell.  And remember,
those fiends deserve their fate or worse.  Don't pity them.  Instead, pity
their victims -- those poor misguided Adventure game players who can't kick
their evil habits!", Fred concludes.

He shakes your hand, says good bye, opens the gate for you to leave and then
locks it behind you.  You find yourself back outside the gate to Hell.  Fred
disappears down the path on the other side.
END_MESSAGE

COMMAND RING
FlagOFF [Has visited Hell]
AtLocation [Gates of Hell]
PrintMessage [1st Bell Ring]
PlusScore 15
TurnFlagON [Has visited Hell]
DoneWithTurn
END_COMMAND

MESSAGE [Later Bell Ring]
Ding! Dong!
END_MESSAGE

COMMAND RING
Present [Bell]
PrintMessage [Later Bell Ring]
DoneWithTurn
END_COMMAND

COMMAND RING
FlagOFF [Has rung the church bells]
AtLocation [R641  Bell Room]
OR
AtLocation [R645  Bells!  Bells!  Room]
PlusScore 10 ; give 10 points for ringing church bells
TurnFlagON [Has rung the church bells]
END_COMMAND

COMMAND RING
AtLocation [R641  Bell Room]
OR
AtLocation [R645  Bells!  Bells!  Room]
PrintMessage [Later Bell Ring]
DoneWithTurn
END_COMMAND

COMMAND RING GONG
AtLocation [N end of reservoir]
Present [Darwin the turtle]
PrintMessage [GONG.RINGS]
DoneWithTurn
END_COMMAND

COMMAND RING GONG
AtLocation [N end of reservoir]
NOT Present [Darwin the turtle]
PrintMessage [GONG.FETCH]
SendToRoom [Darwin the turtle] [N end of reservoir]
PrintMessage [GONG.RINGS]
DoneWithTurn
END_COMMAND

MESSAGE [TURTLE.BACK]
You step gently on Darwin the Tortoise's back, and he carries you smoothly
over to the southern side of the reservoir.  He then blows a couple of bubbles
at you and sinks back out of sight.
END_MESSAGE

MESSAGE [GONG.RINGS]
 
        >BONNNNGGGGGGGGGG<
 
Darwin the Tortoise blinks in surprise at the noise, but does nothing.
END_MESSAGE

MESSAGE [GONG.FETCH]
 
        >BONNNNNGGGGGGGGG<
 
A hollow voice says, "The GallopingGhost Tortoise Express is now at your
service!"
 
With a swoosh and a swirl of water, a large tortoise rises to the surface of
the reservoir and paddles over to the shore near you.  The message, "I'm
Darwin - ride me!" is inscribed on his back in ornate letters.
END_MESSAGE

;JUMP

COMMAND JUMP
AtLocation [Top of Tree]
OR
AtLocation [circular Room]
OR
AtLocation [1st Level]
OR
AtLocation [2nd Level]
OR
AtLocation [3rd Level]
OR
AtLocation [4th Level]
OR
AtLocation [R30  North Ledge]
PrintMessage "That is very dangerous.  You could get killed doing that.  Oops!"
GoToRoom [Dead]
DoneWithTurn
END_COMMAND

COMMAND JUMP CHASM
InRoom [rickety bridge] ;troll bridge
PrintMessage [use bridge instead]
DoneWithTurn
END_COMMAND

COMMAND JUMP CHASM
IsSomewhere [crystal bridge]
AtLocation [east bank of fissure]
OR
AtLocation [west side of fissure]
PrintMessage [use bridge instead]
DoneWithTurn
END_COMMAND

COMMAND JUMP ANY
IsNowhere [crystal bridge]
AtLocation [east bank of fissure]
OR
AtLocation [west side of fissure]
PrintMessage [jump unsuccessful]
GoToRoom [bottom of the pit]
MinusScore 10
KillPlayer
DoneWithTurn
END_COMMAND

COMMAND JUMP ANY
IsNowhere [rickety bridge] ;troll bridge doesn't exist
AtLocation [SW chasm]
OR
AtLocation [NE chasm]
PrintMessage [jump unsuccessful]
GoToRoom [bottom of the pit]
MinusScore 10
KillPlayer
DoneWithTurn
END_COMMAND

MESSAGE [jump unsuccessful]
With a giant running leap, you sail up and over the chasm!  Unfortunately,
however, you don't sail over ALL of the chasm.  You fall for a long time
before landing on the rocks that litter the floor of the pit far below.
END_MESSAGE

COMMAND JUMP
AtLocation [tiny platform above volcano]
PrintMessage [SIZZLE]
GoToRoom [Dead]
KillPlayer
DoneWithTurn
END_COMMAND

COMMAND JUMP
AtLocation [cavern with waterfall]
ReDirectTo DOWN
DoneWithTurn
END_COMMAND

#COMMENT -- JUMP in bottomless pit and starve to death

COMMAND JUMP
AtLocation [at brink of bottomless pit]
OR
AtLocation [southern edge of bottomless pit]
OR
AtLocation [eastern edge of bottomless pit]
GoToRoom [Dead]
PrintMessage [FALL and STARVE]
KillPlayer
DoneWithTurn
END_COMMAND

#COMMENT -- JUMP and go splatt on bottom below

COMMAND JUMP
AtLocation [balcony]
OR
AtLocation [breath-taking view]
OR
AtLocation [right low window]
OR
AtLocation [long narrow corridor]
OR
AtLocation [misty cavern]
OR
AtLocation [left low window]
GoToRoom [Dead]
RandomMessage [PLUMMET 1] [PLUMMET 5]
KillPlayer
DoneWithTurn
END_COMMAND

MESSAGE [PLUMMET 1]
Aaaaaaaaaiiiiiiiiiiieeeeeeeeee........             >splat<
Hmmmm - I never saw a red flapjack before!
END_MESSAGE

#COMMENT  Turn off warnings -- this message is not directly referenced
#OPTIONS :-Warnings

MESSAGE [PLUMMET 2]
Aaaaaaaaaaaaaaaaaaahhhhhhhhhhhhhhhhhh........      >squish<
Yuck - what a mess!
END_MESSAGE

MESSAGE [PLUMMET 3]
Gaaaaaaaaaaaaaaaaaaaaaaaaaahhhhhh............       >crunch<
END_MESSAGE

MESSAGE [PLUMMET 4]
Haaaaaaaaaaaaaalllllllllllllllllpppppp...........    >smash<
END_MESSAGE

#COMMENT Return "Warnings" to its previous state
#OPTIONS =Warnings

MESSAGE [PLUMMET 5]
Aaaaaaaaaiiiiiiiiiiieeeeeeeeee........             >splat<

You are at the bottom with a broken neck.
END_MESSAGE

MESSAGE [FALL and STARVE]
You have jumped into a bottomless pit.  You continue to fall for a very long
time.  First, your lamp runs out of power and goes dead.  Later, you die of
hunger and thirst.
END_MESSAGE

COMMAND JUMP ANY
PrintMessage [don't be ridiculous]
DoneWithTurn
END_COMMAND

;CLIMB/CROSS/FOLLOW

COMMAND CLIMB TREE
Present [Large trees]
AtLocation [Thick Woods]
BlankLine
PrintMessage [You climb up the tree.]
BlankLine
GoToROOM [Top of Tree]
DoneWithTurn
END_COMMAND

MESSAGE [You climb up the tree.]
You struggle up branch by branch till you reach the tallest part of the tree.
END_MESSAGE

COMMAND CLIMB ROPE
AtLocation [R641  Bell Room]
BlankLine
PrintMessage "You climb up the rope to the room above, where you find..."
BlankLine
GoToROOM [R645  Bells!  Bells!  Room]
DoneWithTurn
END_COMMAND

COMMAND CLIMB ROPE
AtLocation [R645  Bells!  Bells!  Room]
BlankLine
PrintMessage "You climb down the rope to the room below, where you find..."
BlankLine
GoToROOM [R641  Bell Room]
DoneWithTurn
END_COMMAND

COMMAND CLIMB
AtLocation [bottom of icy slide]
PrintMessage [SLIDE.SLIPPERY]
DoneWithTurn
END_COMMAND

MESSAGE [SLIDE.SLIPPERY]
The icy slide is far too steep and slippery to climb.
END_MESSAGE

COMMAND CLIMB ANY
InRoom [gigantic beanstalk]
PrintMessage [You climb up the beanstalk]
BlankLine
GoToRoom [long narrow corridor]
DoneWithTurn
END_COMMAND

MESSAGE [You climb up the beanstalk]
You climb up the beanstalk and scurry through the hole in the ceiling of the
cavern.
END_MESSAGE

COMMAND CLIMB ANY
InRoom [gigantic beanstalk top]
PrintMessage [climb down beanstalk]
BlankLine
GoToRoom [west pit]
DoneWithTurn
END_COMMAND

COMMAND CLIMB ANY
InRoom [12' beanstalk]
PrintMessage "You have climbed up the plant and out of the pit."
BlankLine
GoToRoom [W end of twopit room]
DoneWithTurn
END_COMMAND

COMMAND CLIMB ANY
InRoom [12' beanstalk top]
PrintMessage [climb down beanstalk]
BlankLine
GoToRoom [west pit]
DoneWithTurn
END_COMMAND

COMMAND CLIMB ANY
AtLocation [west pit]
OR
AtLocation [east pit]
PrintMessage "There is nothing here to climb.  Use "UP" to climb out of the pit."
DoneWithTurn
END_COMMAND

COMMAND CLIMB TREE
NOT AtLocation [inside building]
NOT AtLocation [Thick Woods]
AtLocation [end of road]
OR
AtLocationLT [R633  Behind the Alter]
PrintMessage [Stop clowning around!]
DoneWithTurn
END_COMMAND

MESSAGE [Stop clowning around!]
Stop clowning around!  You have places to go, people to see and things to do!
END_MESSAGE

#COMMENT ------- CROSS

COMMAND CROSS
AtLocation [reservoir]
PrintMessage [CANT.SWIM]
DoneWithTurn
END_COMMAND

MESSAGE [CANT.SWIM]
You can't swim, or walk on water.  You'll have to find some other way to get
across, or get someone to assist you.
END_MESSAGE

COMMAND CROSS
AtLocation [breath-taking view]
NOT Present [wheatstone bridge 1]
PrintMessage [NO.ARCH]
DoneWithTurn
END_COMMAND

COMMAND CROSS
AtLocation [breath-taking view]
Present [wheatstone bridge 1]
FlagON [bear following]
PrintMessage [LEAVE.BEAR]
DoneWithTurn
END_COMMAND

COMMAND CROSS
AtLocation [breath-taking view]
Present [wheatstone bridge 1]
IsCarrying [mithril ring]
PrintMessage [FUMES.MISS]
BlankLine
GoToRoom [S end of Stone Faces]
DoneWithTurn
END_COMMAND

COMMAND CROSS
AtLocation [breath-taking view]
Present [wheatstone bridge 1]
NOT IsCarrying [mithril ring]
PrintMessage [FUMES.BURN]
GoToRoom [Dead]
KillPlayer
DoneWithTurn
END_COMMAND

COMMAND CROSS
AtLocation [N end of reservoir]
Present [Darwin the turtle]
PrintMessage [TURTLE.BACK]
SendToRoom [Darwin the turtle] [nowhere]
BlankLine
GoToRoom [reservoir]
DoneWithTurn
END_COMMAND

COMMAND CROSS
AtLocation [N end of reservoir]
NOT Present [Darwin the turtle]
PrintMessage [CANT.SWIM]
DoneWithTurn
END_COMMAND

COMMAND CROSS
AtLocation [S end of Stone Faces]
NOT Present [wheatstone bridge 2]
PrintMessage [NO.ARCH]
DoneWithTurn
END_COMMAND

COMMAND CROSS
AtLocation [S end of Stone Faces]
Present [wheatstone bridge 2]
IsCarrying [mithril ring]
NOT IsCarrying [sapphire-encrusted sceptre]
PrintMessage [FUMES.MISS]
BlankLine
GoToRoom [breath-taking view]
DoneWithTurn
END_COMMAND

COMMAND CROSS
AtLocation [S end of Stone Faces]
Present [wheatstone bridge 2]
IsCarrying [mithril ring]
IsCarrying [sapphire-encrusted sceptre]
PrintMessage [GHOST.BANG]
GoToRoom [Dead]
KillPlayer
Destroy [wheatstone bridge 1]
Destroy [wheatstone bridge 2]
DoneWithTurn
END_COMMAND

COMMAND CROSS
AtLocation [S end of Stone Faces]
Present [wheatstone bridge 2]
NOT IsCarrying [mithril ring]
PrintMessage [FUMES.BURN]
GoToRoom [Dead]
KillPlayer
DoneWithTurn
END_COMMAND

COMMAND CROSS BRIDGE
Present [phony troll]
AtLocation [SW chasm] ;one side of troll bridge
GoToRoom [NE chasm] ;other side
PutInCurrentRoom [phony troll]
PutInCurrentRoom [rickety bridge] ;troll bridge
PrintMessage [scamper across]
DoneWithTurn
END_COMMAND

COMMAND CROSS BRIDGE
Present [phony troll]
AtLocation [NE chasm] ;one side of troll bridge
GoToRoom [SW chasm] ;other side
PutInCurrentRoom [phony troll]
PutInCurrentRoom [rickety bridge] ;troll bridge
PrintMessage [scamper across]
DoneWithTurn
END_COMMAND

COMMAND CROSS BRIDGE
NOT InRoom [burly troll]
InRoom [rickety bridge] ;troll bridge
FlagOFF [troll eliminated] ;troll can appear
PutInCurrentRoom [burly troll]
PrintMessage [troll appears]
LookAtRoom
DoneWithTurn
END_COMMAND

COMMAND CROSS BRIDGE
InRoom [burly troll]
PrintMessage [troll refuses]
DoneWithTurn
END_COMMAND

COMMAND CROSS BRIDGE
InRoom [bridge wreckage]
PrintMessage [no longer any way across]
DoneWithTurn
END_COMMAND

COMMAND CROSS BRIDGE
InRoom [rickety bridge]
FlagON [bear following]
PrintMessage [bridge buckles under bear]
Destroy [rickety bridge] ;troll bridge
Destroy [burly troll]
Destroy [phony troll]
Destroy [contented bear]
TurnFlagOFF [bear following]
SendToRoom [bridge wreckage] [SW chasm]
GoToRoom [bottom of the pit]
MinusScore 10
SendToRoom [OFF lamp] [inside building]
Destroy [ON lamp]
KillPlayer
DoneWithTurn
END_COMMAND

COMMAND CROSS BRIDGE
IsNowhere [crystal bridge]
AtLocation [east bank of fissure]
OR
AtLocation [west side of fissure]
PrintMessage [no way across]
DoneWithTurn
END_COMMAND

COMMAND FOLLOW STREAM
AtLocation [end of road]
PrintMessage [$verb$ the $noun$ for a while]
BlankLine
GoToRoom [valley]
DoneWithTurn
END_COMMAND

COMMAND FOLLOW STREAM
AtLocation [inside building]
PrintMessage [stream goes through pipe; use exit]
DoneWithTurn
END_COMMAND

COMMAND FOLLOW STREAM
AtLocation [slit]
PrintMessage "You don't fit through a two-inch slit!"
DoneWithTurn
END_COMMAND

COMMAND FOLLOW STREAM
AtLocation [valley]
PrintMessage [$verb$ the $noun$ for a while]
BlankLine
GoToRoom [slit]
DoneWithTurn
END_COMMAND

COMMAND FOLLOW STREAM
AtLocation [slit]
PrintMessage [$verb$ the $noun$ for a while]
BlankLine
GoToRoom [depression outside grate]
DoneWithTurn
END_COMMAND

COMMAND FOLLOW ROAD
AtLocation [end of road]
PrintMessage [$verb$ the $noun$ for a while]
BlankLine
GoToRoom [hill by road]
DoneWithTurn
END_COMMAND

COMMAND FOLLOW ROAD
AtLocation [hill by road]
PrintMessage [$verb$ the $noun$ for a while]
BlankLine
GoToRoom [end of road]
DoneWithTurn
END_COMMAND

COMMAND FOLLOW PIRATE
PrintMessage [can't be serious]
PrintMessage [$NOUN$ is long gone]
DoneWithTurn
END_COMMAND

COMMAND FOLLOW PROGRAMMER
PrintMessage [can't be serious]
PrintMessage [$NOUN$ is long gone]
DoneWithTurn
END_COMMAND

COMMAND FOLLOW DWARF
FlagON [dwarf here]
PrintMessage [it's already here]
DoneWithTurn
END_COMMAND

COMMAND FOLLOW DWARF
FlagOFF [dwarf here]
PrintMessage [You follow dwarf]
DoneWithTurn
END_COMMAND

MESSAGE [You follow dwarf]
You have crawled around in some small passages and wound up back where you
started in the first place.
END_MESSAGE

COMMAND FOLLOW TROLL
NOT InRoom [burly troll]
PrintMessage [where to go] ;Tell me where to go to $verb$ the $noun$
DoneWithTurn
END_COMMAND

COMMAND FOLLOW TROLL
InRoom [burly troll]
PrintMessage [it's already here]
DoneWithTurn
END_COMMAND

COMMAND CLIMB ANY
PrintMessage [where to go] ;Tell me where to go to $verb$ the $noun$
DoneWithTurn
END_COMMAND

#COMMENT -- KISS

COMMAND KISS TOAD
Present [horny toad]
Destroy [horny toad]
PrintMessage [The toad turns into an ugly dwarf princess]
PlusScore 10 ; wizard gives you 10 points
DoneWithTurn
END_COMMAND

MESSAGE [The toad turns into an ugly dwarf princess]
You must really have a sick mind!  But -- your wish is my COMMAND and must be
obeyed -- no matter how bizarre.  Ok ...  here goes ...  You pick up the toad.
Grasping it firmly, you give it a tender little kiss on the top of the head.
Suddenly, the earth starts to tremble and the toad begins to glow with a
bright red light.  You are blinded by the light and cover your eyes with your
arm.  After a while the earth stops trembling and you remove your arm from
your eyes.

It's -- it's -- it's turning into a dwarf princess!

She -- she -- she's -- she's -- UGLY! -- VERY UGLY!!!!!!

She's 3'6" tall, and 180 lbs., with black, oily, snarly hair, and three large
warts on her nose, which separates two beady red eyes that don't track.  She
immediately starts to say, in a high-pitched nasal whine, "Trying to pick me
up, eh sweetie?  Where do you think you get off?  I'm a decent broad, and
won't have any of this.  Whatcha doing around here?  You one of those weird
explorers who rip off decent folks, taking their treasures out of the cave?
I hope you haven't found the magic wand yet . . . "

A cloud of white smoke and a wizard appear.  He is garbed in green and violet
robes, and says  "I really must apologize about this.  She has no business in
this game; she escaped from another game in the next town.  To compensate you
for this inconvenience, let me add ten points to your score.  Sorry again."
With that, he takes her hand, and they start to vanish.  As they fade out of
sight, you note that she has taken his hat, and is beating him severely about
the ears with it.
END_MESSAGE

COMMAND KISS ANY
PrintMessage [don't be ridiculous]
DoneWithTurn
END_COMMAND

#COMMENT -- "bad" words

COMMAND SHIT
PrintMessage [Watch it!  This adventure is rated G!]
MinusScore 10
DoneWithTurn
END_COMMAND

MESSAGE [Watch it!  This adventure is rated G!]
Hey!  Watch it!  This adventure is rated  "G"!
END_MESSAGE

;TALK TO/TELL/ASK

#COMMENT -- TELL TIME

COMMAND TELL TIME
Present [clock]
ReDirectTo SAY TIME
END_COMMAND

COMMAND TELL TIME
Present [Gold Watch]
ReDirectTo SAY TIME
END_COMMAND

COMMAND TELL TIME
NOT Present [Gold Watch]
NOT Present [clock]
PrintMessage [Perhaps, you can find a sun dial somewhere.]
DoneWithTurn
END_COMMAND

COMMAND TALK TO TOAD
Present [horny toad]
PrintMessage [you chat with toad]
DoneWithTurn
END_COMMAND

COMMAND ASK TOAD ABOUT ANY
Present [horny toad]
PrintMessage [you chat with toad]
DoneWithTurn
END_COMMAND

MESSAGE [you chat with toad]
Talking to a toad is rather strange -- even for you!  You must be desperate to
solve this adventure or have other kinds of problems.  The toad seems somewhat
amused by your attempts at communication.  It stares at you and then responds
with a loud belch-like "RIB-BIT".
END_MESSAGE

COMMAND TALK TO PLANT
AtLocation [west pit]
PrintMessage "The plant cries out, "Water...water, please ....  water"."
DoneWithTurn
END_COMMAND

COMMAND TALK TO DWARF
FlagON [dwarf here]
PrintMessage [$noun$ jabbers]
DoneWithTurn
END_COMMAND

MESSAGE [$noun$ jabbers]
The $noun$ starts jabbering away and jumping up and down excitedly.
Unfortunately, he is speaking Dwarvish, so you cannot understand what he is
saying.  However, he appears very angry!
END_MESSAGE

COMMAND TALK TO FIGURE
InRoom [shadowy figure (right)]
OR
InRoom [shadowy figure (left)]
PrintMessage [You talk to figure]
DoneWithTurn
END_COMMAND

MESSAGE [You talk to figure]
You talk to the figure, but the figure just ignores you.  Finally, you yell at
the top of your lungs.  The figure still ignores you.  It is almost like
talking to yourself.
END_MESSAGE

COMMAND TALK TO PIRATE
PrintMessage [$NOUN$ is long gone]
DoneWithTurn
END_COMMAND

COMMAND TALK TO TROLL
InRoom [burly troll]
PrintMessage [You talk to troll]
DoneWithTurn
END_COMMAND

MESSAGE [You talk to troll]
The troll scowls at you and spits on the ground.  "I have no time for chit-
chat, just give me a treasure and you can cross the bridge!", he says with
anger in his voice.
END_MESSAGE

COMMAND TALK TO ANY
NOUNPresent
PrintMessage "The $noun$ ignores your feeble attempts to communicate."
DoneWithTurn
END_COMMAND

COMMAND TALK TO ANY
PrintMessage "Talking to yourself is a sign of a very sick mind!"
DoneWithTurn
END_COMMAND

;ATTACH or TIE

COMMAND ATTACH CUPS TO FLOOR
Present [suction cups]
AtLocation [computer center]
IsNoWhere [hole in floor]
PrintMessage [You lift up tile]
ChangePassageway [down] [below the computer center]
DropIt [hole in floor]
PlusScore 15
DoneWithTurn
END_COMMAND

MESSAGE [You lift up tile]
You attach the suction cups to the floor tiles and lift up.  A tile comes up
making a hole in the floor.
END_MESSAGE

COMMAND ATTACH CUPS TO ANY
Present [suction cups]
OBJECTPresent
PrintMessage [You attach them briefly]
DropIt [suction cups]
DoneWithTurn
END_COMMAND

MESSAGE [You attach them briefly]
You attach the suction cups to the $object$.  After a moment or two, the cups
lose their suction and fall off.
END_MESSAGE

;LIST

COMMAND LIST ANY
FlagOFF [lamp lit]
FlagON [dark w/o lamp] ;room needs light
PrintMessage [now dark] ; so can't LIST EXITS
DoneWithTurn
END_COMMAND

;COMMANDS -- READ

#COMMENT -- READ WATCH or CLOCK

COMMAND READ TIME
Present [clock]
OR
Present [Gold Watch]
ReDirectTo SAY TIME
END_COMMAND

COMMAND READ WATCH
Present [Gold Watch]
ReDirectTo SAY TIME
END_COMMAND

COMMAND READ CLOCK
Present [clock]
ReDirectTo SAY TIME
END_COMMAND

COMMAND READ SIGN
AtLocation [circular Room]
PrintMessage "It still says 'DEAD END'!"
DoneWithTurn
END_COMMAND

MESSAGE [Commandment List]
The paint is cracked and faded and the letters are difficult to read.
However, it appears to be a long list of commandments.  There are many, many,
many more than ten.  Your eyes scan the list and fall randomly on a
commandment near the bottom of the list.

You just make it out...

COMMANDMENT #12592
Oh ye who write Adventure Games that torment the player with stupid puzzles:
Dost thou know the magnitude of thy sin before the gods?  Yea, verily, thou
shalt be ground between two stones.  Shall the angry gods cast thy body into
the whirlpool?  Surely, thy eye shall be put out with a sharp stick!  Even
unto the ends of the earth shalt thou wander and unto the land of the dead
shalt thou be sent at last.  Surely thou shalt repent of thy low cunning.

You smile and nod your head in agreement and approval.
END_MESSAGE

COMMAND READ SIGN
FlagOFF [has read commandment list]
AtLocation [R643  The Pulpit]
PrintMessage [Commandment List]
PlusScore 10
TurnFlagON [has read commandment list]
DoneWithTurn
END_COMMAND

COMMAND READ SIGN
FlagON [has read commandment list]
AtLocation [R643  The Pulpit]
PrintMessage [Commandment List]
DoneWithTurn
END_COMMAND

COMMAND READ DISK
AtLocation [computer center]
Present [floppy disk]
PrintMessage [You insert disk in PC]
BlankLine
PrintMessage [AGT info]
PlusScore 10
DoneWithTurn
END_COMMAND

MESSAGE [You insert disk in PC]
You insert the disk in drive A: of the PC and list the directory.  You see a
file named READ.ME.  You decide to see what it says by typing the COMMAND
"TYPE READ.ME".  The screen shows...

************* CONGRATULATIONS ***************
You just got ten points added to your score!!
END_MESSAGE

COMMAND READ DIARY
FlagOFF [Has read AGT info in diary]
Present [old diary] (* Witt's Diary *)
PrintMessage [AGT Info]
TurnFlagON [Has read AGT info in diary]
DoneWithTurn
END_COMMAND

COMMAND READ DIARY
FlagON [Has read AGT info in diary]
Present [old diary] (* Witt's Diary *)
RandomMessage [Funny Saying -- First] [Funny Saying -- Last]
DoneWithTurn
END_COMMAND

COMMAND READ SIGN
AtLocation [computer center]
PrintMessage [No Smoking]
DoneWithTurn
END_COMMAND

MESSAGE [No Smoking]
The sign reads: "Expiratory Distribution of Partially Ignited Hydrocarbons
into the Immediate Atmosphere Strictly Disallowed".  Below these words is a
picture of a burning cigarette with a red circle and a red line drawn through
it.
END_MESSAGE

COMMAND READ SIGN
FlagON [has read about secret words]
Present [faded sign]
PrintMessage [AGT Info]
DoneWithTurn
END_COMMAND

COMMAND READ SIGN
FlagOFF [has read about secret words]
Present [faded sign]
PrintMessage [Secret Word Info]
TurnFlagON [has read about secret words]
DoneWithTurn
END_COMMAND

MESSAGE [Secret Word Info]
When first released, this game offered a special $100 prize to the first
person to discover 10 "secret words" that were hidden throughout this
adventure!!!  Sorry, but the prize has already been won.

But as a special challenge, the secret words have been left in the game.  Try
to find them!!!
END_MESSAGE

COMMAND READ GUIDEBOOK
FlagOFF [Has read AGT info in guidebook]
Present [Adventure Guidebook]
PrintMessage [AGT Info]
TurnFlagON [Has read AGT info in guidebook]
DoneWithTurn
END_COMMAND

COMMAND READ GUIDEBOOK
FlagON [Has read AGT info in guidebook]
Present [Adventure Guidebook]
RandomMessage [Funny Saying -- First] [Funny Saying -- Last]
DoneWithTurn
END_COMMAND

COMMAND READ ANY
AtLocation [programmer's den]
TurnFlagOFF [secret word given] ;revoke secret words
TurnFlagON [programmer angry] ;programmer is angry
PrintMessage [programmer takes revenge]
MinusScore 25 ;That will teach you
GoToRoom [twisty 44] ;Pirate's maze - just south of Pirate's den
DoneWithTurn
END_COMMAND

COMMAND READ COMPASS
Present [Compass]
ReDirectTo EXAMINE COMPASS
DoneWithTurn
END_COMMAND

COMMAND READ OYSTER
NOUNpresent
PrintMessage [It is written in Dwarvish]
DoneWithTurn
END_COMMAND

MESSAGE [It is written in Dwarvish]
I'm afraid it is written in Dwarvish (a language somewhat like LISP or APL --
i.e., it is a "write-only" language and is totally unreadable).
END_MESSAGE

COMMAND READ ANY
FlagON [dark w/o lamp]
NOT Present [ON lamp]
PrintMessage "You can't read in the dark!"
DoneWithTurn
END_COMMAND

;EXAMINE

COMMAND EXAMINE ANY
AtLocation [programmer's den]
TurnFlagOFF [secret word given] ;revoke secret words
TurnFlagON [programmer angry]
PrintMessage [programmer takes revenge]
MinusScore 25 ;That will teach you
GoToRoom [twisty 44] ;Pirate's maze - just south of Pirate's den
DoneWithTurn
END_COMMAND

COMMAND EXAMINE BELL
AtLocation [R645  Bells!  Bells!  Room]
PrintMessage [Bells description]
DoneWithTurn
END_COMMAND

MESSAGE [Bells description]
The bells are of all shapes and sizes.  However, they are all too heavy
to carry.
END_MESSAGE

COMMAND EXAMINE SCEPTRE
Present [skeleton on throne in Audience hall]
DescribeThing [sapphire-encrusted sceptre]
DoneWithTurn
END_MESSAGE

MESSAGE [Describe Cane]
The cane is about 3 feet long and made of ebony.  It is quite sturdy.  The
head of the cane is gold with various precious jewels.  The rabbit is holding
be his side and occasionally shaking it at you.
END_MESSAGE

COMMAND EXAMINE CANE
Present [Gigantic Rabbit]
PrintMessage [Describe Cane]
DoneWithTurn
END_COMMAND

COMMAND EXAMINE WIRE
FlagOFF [has found gold watch]
AtLocation [small room below the computer center]
DescribeThing [wire and cable]
BlankLine
PrintMessage "You discover something bright and ticking among the wires."
DropIt [Gold Watch]
TurnFlagON [has found gold watch]
DoneWithTurn
END_COMMAND

COMMAND EXAMINE WIRE
FlagON [has found gold watch]
AtLocation [small room below the computer center]
DescribeThing [wire and cable]
DoneWithTurn
END_COMMAND

COMMAND EXAMINE MATCHES
Present [matches]
VariableEquals [matches left] 1
PrintMessage "There is only one match left.  Don't waste it!"
DoneWithTurn
END_COMMAND

COMMAND EXAMINE CANDLE
Present [burning candle]
DescribeThing [burning candle]
DoneWithTurn
END_COMMAND

COMMAND EXAMINE CANDLE
Present [candles]
VariableEquals [candles left] 1
PrintMessage "There is only one candle left."
DoneWithTurn
END_COMMAND

COMMAND EXAMINE CANDLE
Present [candles]
DescribeThing [candles]
DoneWithTurn
END_COMMAND

COMMAND EXAMINE DRAWER
AtLocation [private office] (* Witt's Office *)
PrintMessage [It has an ornate gold lock]
DoneWithTurn
END_COMMAND
  
COMMAND EXAMINE COMPASS
AtLocation [inside Rabbit's Warren]
Present [compass]
PrintMessage [Compass Reading -- East]
TurnFlagON [Has used compass in Rabbit's Warren]
DoneWithTurn
END_COMMAND

COMMAND EXAMINE COMPASS
Present [Compass]
RandomMessage [Compass Reading -- North] [Compass Reading -- West]
DoneWithTurn
END_COMMAND

MESSAGE [Compass Reading -- North]
The needle of the compass is currently pointing North.
END_MESSAGE

#COMMENT  Turn off warnings -- this message is not directly referenced
#OPTIONS :-Warnings

MESSAGE [Compass Reading -- South]
The needle of the compass is currently pointing South.
END_MESSAGE

MESSAGE [Compass Reading -- East]
The needle of the compass is currently pointing East.
END_MESSAGE

#COMMENT Return "Warnings" to its previous state
#OPTIONS =Warnings

MESSAGE [Compass Reading -- West]
The needle of the compass is currently pointing West.
END_MESSAGE

COMMAND EXAMINE STREAM
AtLocationLT [R602  Narrow Gully]
PrintMessage [stream is nice and cool -- you take a drink]
DoneWithTurn
END_MESSAGE

MESSAGE [stream is nice and cool -- you take a drink]
The stream is clear and cold.  It looks so refreshing that you pause to take
a drink.
END_MESSAGE

COMMAND EXAMINE STREAM
AtLocation [inside building]
PrintMessage [stream goes through pipe; use exit]
DoneWithTurn
END_COMMAND

COMMAND EXAMINE STREAM
AtLocation [valley]
OR
AtLocation [end of road]
PrintMessage [stream clear & cold]
DoneWithTurn
END_COMMAND

MESSAGE [stream clear & cold]
The stream is clear and cold.  It runs down through the rocks and trees from
north to south.
END_MESSAGE

COMMAND EXAMINE STREAM
AtLocation [slit]
PrintMessage "The stream flows into the slit in the rock.  It is cold and clear."
DoneWithTurn
END_COMMAND

COMMAND EXAMINE BUILDING
AtLocation [end of road]
PrintMessage [building is ...]
DoneWithTurn
END_COMMAND

MESSAGE [building is ...]
The building is about 20 feet on a side and made of old bricks.  It appears to
be a well house for a stream which runs out of the building through two pipes.
The stream continues down a gully to the south.
END_MESSAGE

COMMAND EXAMINE TREE
NOT AtLocation [inside building]
NOT AtLocation [Thick Woods]
AtLocation [end of road]
OR
AtLocationLT [R633  Behind the Alter]
PrintMessage [trees are ...]
DoneWithTurn
END_COMMAND

MESSAGE [trees are ...]
The trees of the forest are large hardwood oak and maple, with an occasional
grove of pine or spruce.  There is quite a bit of undergrowth, largely birch
and ash saplings plus nondescript bushes of various sorts.  This time of year
visibility is quite restricted by all the leaves, but travel is quite easy if
you detour around the spruce and berry bushes.
END_MESSAGE

COMMAND EXAMINE GRATE
AtLocation [air-conditioned room]
OR
Present [air-conditioning grate]
DescribeThing [air-conditioning grate]
DoneWithTurn
END_COMMAND

COMMAND EXAMINE GRATE
AtLocation [depression outside grate]
OR
AtLocation [below grate]
OR
AtLocation [cylindrical chamber]
PrintMessage [You can not unlock it without a key]
DoneWithTurn
END_COMMAND

MESSAGE [You can not unlock it without a key]
The grate is very solid and has a hardened steel lock.  You can not unlock it
without a key, and there are no keys nearby.
END_MESSAGE

COMMAND EXAMINE CAGE
Present [caged bird]
PrintMessage [describe cage]
DoneWithTurn
END_COMMAND

MESSAGE [describe cage]
The cage is made of wicker.  It currently houses a rather unhappy looking
bird.  The bird has stopped singing and almost appears to be pouting.
END_MESSAGE

COMMAND EXAMINE CHASM
AtLocation [east bank of fissure]
OR
AtLocation [west side of fissure]
OR
AtLocation [SW chasm]
OR
AtLocation [NE chasm]
OR
AtLocation [R30  North Ledge]
PrintMessage [describe chasm]
DoneWithTurn
END_COMMAND

MESSAGE [describe chasm]
You peer across the chasm and can just make out the other side through the
thick white mist.  The chasm is too wide to jump.  You drop a small rock over
the edge into the mist and it is quite a while before you hear it hit bottom.
END_MESSAGE

COMMAND EXAMINE MIST
PrintMessage [describe mist]
DoneWithTurn
END_COMMAND

MESSAGE [describe mist]
Mist is a white vapor, usually water.  Seen from time to time in caverns.  It
can be found anywhere but is often a sign of a deep pit leading down to water.
END_MESSAGE

COMMAND EXAMINE MAZE
AtLocation [twisty little passages] ;vending machine maze
OR
AtLocation [twisting little maze]
OR
AtLocationGT [barren room]
AtLocationLT [end of road]
PrintMessage [describe maze]
DoneWithTurn
END_COMMAND

COMMAND EXAMINE MAZE
AtLocationGT [W end - hall of mists] ;pirate's maze
AtLocationLT [brink of 30' pit]
PrintMessage [describe maze]
DoneWithTurn
END_COMMAND

MESSAGE [describe maze]
The rooms in this part of the cave are like a maze.  All of them are
interconnected by twisting little passages heading off in all directions.
There are also many dead ends.  You appear to be thoroughly and utterly lost.
END_MESSAGE

COMMAND EXAMINE CAVE
AtLocationGT [cobble crawlway] ;in cave
AtLocationLT [end of road]
PrintMessage [describe cave]
DoneWithTurn
END_COMMAND

MESSAGE [describe cave]
The cave walls are rough.  The floor is covered with dirt and small rocks.
A few stalactites hang down from the ceiling -- but not far enough to reach.
The air is musty and smells slightly of sulfur.  Altogether a depressing
place.
END_MESSAGE

COMMAND EXAMINE ROAD
AtLocation [hill by road]
OR 
AtLocation [end of road]
PrintMessage [describe road]
DoneWithTurn
END_COMMAND

MESSAGE [describe road]
The road is little more than a dirt path.  It winds from the building to the
forest area at the top of the small hill.
END_MESSAGE

COMMAND EXAMINE MINOTAUR
AtLocation [N end of Stone Faces]
DescribeThing [Statue of minotaur]
DoneWithTurn
END_COMMAND

COMMAND EXAMINE YACHT
Present [Ruby-covered toy yacht]
SwapLocations [Ruby-covered toy yacht] [Ruby Yacht of Omar Khayyam]
DescribeThing [Ruby Yacht of Omar Khayyam]
DoneWithTurn
END_COMMAND

COMMAND EXAMINE SCULPTURE
Present [rock-crystal sculpture]
RandomMessage [rock-crystal description 1] [rock-crystal description 9]
END_COMMAND

MESSAGE [rock-crystal description 1]
The crystal sculpture is a small delicate carving of a computer programmer.
END_MESSAGE

#COMMENT  Turn off warnings -- this message is not directly referenced
#OPTIONS :-Warnings

MESSAGE [rock-crystal secret word]
SECRET WORD #8 -- RESTIVE (adj) unmanageable; fretting under control.
END_MESSAGE

MESSAGE [rock-crystal description 2]
The crystal sculpture is a small delicate carving of a pig.
END_MESSAGE

MESSAGE [rock-crystal description 3]
The crystal sculpture is a small delicate carving of an eel.
END_MESSAGE

MESSAGE [rock-crystal description 4]
The crystal sculpture is a small delicate carving of a spotted owl.
END_MESSAGE

MESSAGE [rock-crystal description 5]
The crystal sculpture is a small delicate carving of a dwarf.
END_MESSAGE

MESSAGE [rock-crystal description 6]
The crystal sculpture is a small delicate carving of an elf.
END_MESSAGE

MESSAGE [rock-crystal description 7]
The crystal sculpture is a small delicate carving of a dragon.
END_MESSAGE

MESSAGE [rock-crystal description 8]
The crystal sculpture is a small delicate carving of an emu.
END_MESSAGE

#COMMENT Return "Warnings" to its previous state
#OPTIONS =Warnings

MESSAGE [rock-crystal description 9]
The crystal sculpture is a small delicate carving of a ibex.
END_MESSAGE

COMMAND EXAMINE BRIDGE
AtLocation [R612  Humpbacked Bridge]
OR
AtLocation [R617  Beside the Stream]
OR
AtLocation [R618  South End of Bridge]
OR
AtLocation  [R623  Forest Track]
PrintMessage [Describe  Humpbacked Bridge]
DoneWithTurn
END_COMMAND

MESSAGE [Describe  Humpbacked Bridge]
The humpbacked bridge is a picturesque stone structure, coated in moss and
creepers.
END_MESSAGE

COMMAND EXAMINE WATER
AtLocation [on the beach]
PrintMessage [SALT.H20.BAD]
DoneWithTurn
END_COMMAND

MESSAGE [SALT.H20.BAD]
I'm afraid that all that's available here is salt water, which isn't good for
anything much...  you'd better try elsewhere.
END_MESSAGE

#COMMENT -- EXAMINE WATCH or CLOCK

COMMAND EXAMINE WATCH
Present [Gold Watch]
DescribeThing [Gold Watch]
BlankLine
ReDirectTo SAY TIME
END_COMMAND

COMMAND EXAMINE CLOCK
Present [clock]
DescribeThing [clock]
BlankLine
ReDirectTo SAY TIME
END_COMMAND


;SMELL

COMMAND SMELL ROSE
Present [beautiful rose]
FlagOFF [Has smelled the beautiful rose]
PlusScore 10 ; give 10 points for smelling the beautiful rose
TurnFlagON [Has smelled the beautiful rose]
END_COMMAND

COMMAND SMELL ROSE
Present [rose]
OR
Present [beautiful rose]
PrintMessage "The rose smells wonderful."
DoneWithTurn
END_COMMAND

COMMAND SMELL ANY
PrintMessage "All you can smell is your own B.O. which is pretty ripe."
DoneWithTurn
END_COMMAND


;FEE FIE FOE FOO

COMMAND FOO
AtLocation [cylindrical chamber] ;playing "end game"
TurnFlagOFF [Has just said 'Zorton'] ; i.e., "wrong" secret word
END_COMMAND

COMMAND FOO
Present [walk-in safe - closed]
PrintMessage [SAFE.FUSES]
SetVariableTo [Status of Safe] 2 ; safe is now fused shut
TurnCounterON [Rover counter - to all you "Prisoner" fans]
#COMMENT Rover released if wrong password given
DoneWithTurn
END_COMMAND

COMMAND FEE
AddToVariable [ffff count] 1
NOT VariableEquals [ffff count] 4 ;Not to 4 yet
PrintMessage [nothing happens]
DoneWithTurn
END_COMMAND

COMMAND FOO
VariableEquals [ffff count] 4 ;OK - done with sequence
AtLocation [giant room]
Present [golden eggs]
PrintMessage [nothing happens]
SetVariableTo [ffff count] 0 ;Reset counter
DoneWithTurn
END_COMMAND

COMMAND FOO
VariableEquals [ffff count] 4 ;OK - done with sequence
NOT AtLocation [giant room]
Present [golden eggs]
DropIt [phony eggs]
Destroy [golden eggs]
PrintMessage "The golden eggs vanish before your very eyes!"
SetVariableTo [ffff count] 0 ;Reset counter
DoneWithTurn
END_COMMAND

COMMAND FOO
VariableEquals [ffff count] 4 ;OK - done with sequence
IsNowhere [golden eggs]
Destroy [phony eggs]
SendToRoom [golden eggs] [fallen tree] ; new place to put eggs
PrintMessage [They have been returned]
SetVariableTo [ffff count] 0 ;Reset counter
TurnFlagON [eggs returned] ; Player has got eggs back via magic words
PlusScore 15
DoneWithTurn
END_COMMAND

MESSAGE [They have been returned]
As you finish speaking the magic phrase, you feel a slight earth tremor.  Then
after a moment of silence, a strange voice echoes through the cave -- "They
have been returned to their rightful place!"
END_MESSAGE

COMMAND FOO
VariableEquals [ffff count] 4 ;OK - done with sequence
PrintMessage [nothing happens]
SetVariableTo [ffff count] 0 ;Reset counter
DoneWithTurn
END_COMMAND

#COMMENT -------- HELP

COMMAND HELP
AtLocation [R30  North Ledge]
FlagON [Player has thrown something into chasm]
TurnFlagOFF [Player has thrown something into chasm]
PlusScore 10
PrintMessage [Sorry about that ...]
DoneWithTurn (* no further action -- get next input *)
END_COMMAND

MESSAGE [Sorry about that ...]
You shouldn't believe everything you read in Adventure Games -- even the HELP
messages!
END_MESSAGE

COMMAND HELP
AtLocationGT [S end of fog-filled room]
AtLocationLT [fog-filled room by cairn]
PrintMessage [foggy room hint]
DoneWithTurn
END_COMMAND

MESSAGE [foggy room hint]
Ok - what you need to do is apply a little philosophy.  To wit:  there is a
question that you need to ask whenever you explore a new room in this cave.
In most places, the answer to the question is "yes". In some other places,
it's "no" for an obvious reason.  Right here, the answer is "no" but the
reason isn't so obvious.  If you can figure out what the question is, you can
get out of here easily.  I can tell you this - it's always a vital question if
you wish to survive.
END_MESSAGE

COMMAND HELP ANY
AtLocation [plover room]
OR
AtLocation [dark-room]
PrintMessage "Are you trying to explore beyond the plover room?"
PromptForYes
PrintMessage [want the hint?]
PromptForYes
TurnFlagON [temp] ;hint has been rejected - so far
PrintMessage [hint costs 5]
PrintMessage [is this acceptable?]
PromptForYes
TurnFlagOFF [temp] ;hint has been accepted
PrintMessage [There is a way]
MinusScore 5
DoneWithTurn
END_COMMAND

MESSAGE [There is a way]
There is a way to explore that region without having to worry about falling
into a pit.  None of the objects available is immediately useful in
discovering the secret.
END_MESSAGE

COMMAND HELP ANY
FlagOFF [maze hint offered] ;maze hint has not been given, yet
AtLocation [twisty little passages] ;vending machine maze
OR
AtLocation [twisting little maze]
OR
AtLocationGT [barren room]
AtLocationLT [end of road]
PrintMessage [drop things]
TurnFlagON [maze hint offered] ;hint has been given
DoneWithTurn
END_COMMAND

COMMAND HELP ANY
FlagON [maze hint offered] ;maze hint has been given
AtLocation [twisty little passages] ;vending machine maze
OR
AtLocation [twisting little maze]
OR
AtLocationGT [barren room]
AtLocationLT [end of road]
PrintMessage [I'm confused too]
DoneWithTurn
END_COMMAND

COMMAND HELP ANY
FlagOFF [maze hint offered] ;maze hint has not been given, yet
AtLocationGT [W end - hall of mists] ;pirate's maze
AtLocationLT [brink of 30' pit]
PrintMessage [drop things]
TurnFlagON [maze hint offered] ;hint has been given
DoneWithTurn
END_COMMAND

MESSAGE [drop things]
You can make the passages look less alike by dropping things.
END_MESSAGE

COMMAND HELP ANY
FlagON [maze hint offered] ;maze hint has been given
AtLocationGT [W end - hall of mists] ;pirate's maze
AtLocationLT [brink of 30' pit]
PrintMessage [I'm confused too]
DoneWithTurn
END_COMMAND

COMMAND HELP ANY
AtLocation [witt's end]
PrintMessage "Do you need help getting out of here?"
PromptForYes
PrintMessage [want the hint?]
PromptForYes
TurnFlagON [temp] ;hint has been rejected - so far
PrintMessage [hint costs 5]
PrintMessage [is this acceptable?]
PromptForYes
TurnFlagOFF [temp] ;hint has been accepted
PrintMessage "Keep going east."
MinusScore 5
DoneWithTurn
END_COMMAND

COMMAND HELP ANY
FlagON [temp] ;hint was rejected
TurnFlagOFF [temp]
PrintMessage [okay, do it yourself]
DoneWithTurn
END_COMMAND

;TURN

COMMAND TURN HANDLE
 FlagON [vault unlocked]                         <-- vault is still unlocked
 Present [unlocked vault]                        <-- unlocked vault is here
 ReDirectTo OPEN SAFE
END_COMMAND

COMMAND TURN HANDLE
 FlagON [vault unlocked]                         <-- combination is correct
 Present [locked vault]                          <-- locked vault is here
 SwapLocations [locked vault] [unlocked vault]   <-- get the unlocked vault
 PrintMessage [unlock vault]                     <-- tell `em about it
 DoneWithTurn
END_COMMAND

MESSAGE [unlock vault]
You turn the handle clockwise until it is pointing downward and you hear a
scraping sound as the rods are withdrawn from within the frame.  The safe is
now unlocked!
END_MESSAGE

QUESTION [Right or Left?] WHICH DIRECTION (LEFT OR RIGHT) ?
ANSWER [Right or Left?] RIGHT

COMMAND TURN DIAL
 FlagOFF [first number]           <-- no right answers yet, seeking first number
 FlagOFF [second number]
 FlagOFF [third number]
 AskQuestion [Right or Left?]
 AnswerIsCorrect                <-- player turned the dial to the right
 GetNumberInput 0 99            <-- get his number
 PrintMessage [Strange -- nothing happened!]
 NumberEquals [first]           <-- if it's the correct number
 TurnFlagON [first number]        <-- set the flag that he got it correctly
 DoneWithTurn
END_COMMAND

COMMAND TURN DIAL
 FlagON [first number]            <-- player has the first number right
 FlagOFF [second number]          <-- seeking second number
 FlagOFF [third number]           <-- not ready for third number yet
 AskQuestion [Right or Left?]
 AnswerIsWrong                  <-- player turned the dial to the left
 GetNumberInput 0 99            <-- get his number
 PrintMessage [Strange -- nothing happened!]
 NumberEquals [second]          <-- if it's the correct number
 TurnFlagON [second number]       <-- set the flag that he got it correctly
 DoneWithTurn
END_COMMAND

COMMAND TURN DIAL
 FlagON [first number]            <-- player has the first number right
 FlagON [second number]           <-- and the second number right
 FlagOFF [third number]           <-- seeking third number
 AskQuestion [Right or Left?]
 AnswerIsCorrect                <-- player turned the dial to the right
 GetNumberInput 0 99            <-- get his number
 NumberEquals [third]           <-- if it's the correct number
 TurnFlagON [third number]        <-- set the flag that he got it correctly
 TurnFlagON [vault unlocked]     <-- tell the program the vault's unlocked
 PrintMessage "You suddenly hear a loud CLICK!"
 SwapLocations [locked vault] [unlocked vault]
 DoneWithTurn
END_COMMAND

COMMAND TURN DIAL
 FlagOFF [first number]           <-- no right answers yet, seeking first number
 AnswerIsWrong                  <-- player turned the dial to the left
 GetNumberInput 0 99            <-- get his number and fall thru
END_COMMAND

COMMAND TURN DIAL
 FlagON [first number]            <-- player has first number correct
 FlagOFF [second number]          <-- and is seeking the second number
 AnswerIsCorrect                <-- player turned the dial to the right
 GetNumberInput 0 99            <-- get his number and fall thru
END_COMMAND

COMMAND TURN DIAL
 FlagOFF [third number]           <-- did not get combination right
 TurnFlagOFF [second number]      <-- reset all the number flags
 TurnFlagOFF [first number]       <-- and let player start from scratch again
 PrintMessage [Strange -- nothing happened!]
 DoneWithTurn
END_COMMAND

COMMAND TURN LIGHT
PrintMessage [say extinguish]
DoneWithTurn
END_COMMAND
 
MESSAGE [say extinguish]
Rather than saying "TURN ON LAMP" or "TURN OFF LAMP", please use "LIGHT LAMP"
or "EXTINGUISH LAMP".
END_MESSAGE

;QUIT COMMANDS

MESSAGE [Do you really want to quit?]
Listen friend, this is really a fantastic adventure so I'll give you another
chance.  Do you really really really really want to quit?
END_MESSAGE

MESSAGE [Thank you for playing CAVE]

Thank you for playing HUMONGOUS CAVE!
END_MESSAGE

MESSAGE [I didn't think you really wanted to quit!]
I didn't think you really wanted to quit!

END_MESSAGE


COMMAND QUIT
FlagOn [Quitting]
DoneWithTurn
END_COMMAND

COMMAND QUIT
PrintMessage [Do you really want to quit?]
PromptForYes (* Get YES or NO answer from keyboard *)
PrintMessage [Thank you for playing CAVE]
EndGame (* OK, player entered YES -- so let's quit *)
TurnFlagON [Quitting]
ReDirectTo SCORE
END_COMMAND

COMMAND QUIT
TurnFlagOFF [Quitting]
PrintMessage [I didn't think you really wanted to quit!]
BlankLine
ReDirectTo LOOK
END_COMMAND

#COMMENT -- score is based on Max_Points of [Total Points]

#DEFINE [1st SCORE Breakpoint]      100
#DEFINE [1st SCORE Breakpoint + 1]  101
#DEFINE [2nd SCORE Breakpoint]      200
#DEFINE [2nd SCORE Breakpoint + 1]  201
#DEFINE [3rd SCORE Breakpoint]      300
#DEFINE [3rd SCORE Breakpoint + 1]  301
#DEFINE [4th SCORE Breakpoint]      400
#DEFINE [4th SCORE Breakpoint + 1]  401
#DEFINE [5th SCORE Breakpoint]      500
#DEFINE [5th SCORE Breakpoint + 1]  501
#DEFINE [6th SCORE Breakpoint]      750
#DEFINE [6th SCORE Breakpoint + 1]  751
#DEFINE [7th SCORE Breakpoint]      900
#DEFINE [7th SCORE Breakpoint + 1]  901

COMMAND SCORE
ScoreLT [1st SCORE Breakpoint + 1]
BlankLine
PrintMessage "You are obviously a rank amateur.  Better luck next time."
END_COMMAND

COMMAND SCORE
ScoreLT [2nd SCORE Breakpoint + 1]
ScoreGT [1st SCORE Breakpoint]
BlankLine
PrintMessage "Your score qualifies you as a novice-class adventurer."
END_COMMAND

COMMAND SCORE
ScoreLT [3rd SCORE Breakpoint + 1]
ScoreGT [2nd SCORE Breakpoint]
BlankLine
PrintMessage "You have achieved the rating: "Experienced Adventurer"."
END_COMMAND

COMMAND SCORE
ScoreLT [4th SCORE Breakpoint + 1]
ScoreGT [3rd SCORE Breakpoint]
BlankLine
PrintMessage "You may now consider yourself a "Seasoned Adventurer"."
END_COMMAND

COMMAND SCORE
ScoreLT [5th SCORE Breakpoint + 1]
ScoreGT [4th SCORE Breakpoint]
BlankLine
PrintMessage "You have reached "Junior Master" status."
END_COMMAND

COMMAND SCORE
ScoreLT [6th SCORE Breakpoint + 1]
ScoreGT [5th SCORE Breakpoint]
BlankLine
PrintMessage "Your score puts you in Master Adventurer class C."
END_COMMAND

COMMAND SCORE
ScoreLT [7th SCORE Breakpoint + 1]
ScoreGT [6th SCORE Breakpoint]
BlankLine
PrintMessage "Your score puts you in Master Adventurer class B."
END_COMMAND

COMMAND SCORE
ScoreLT [Total Points]
ScoreGT [7th SCORE Breakpoint]
BlankLine
PrintMessage "Your score puts you in Master Adventurer class A."
END_COMMAND

COMMAND SCORE
ScoreEquals [Total Points]
BlankLine
PrintMessage "All of Adventuredom gives tribute to you, Adventurer Grandmaster!"
END_COMMAND

COMMAND SCORE
BlankLine
FlagOn [Quitting]
ReDirectTo QUIT
END_COMMAND


#COMMENT ******** Messages

MESSAGE [is this acceptable?]
Is this acceptable?
END_MESSAGE

MESSAGE [threatening dwarf in room]
There is a threatening little dwarf in the room with you!
END_MESSAGE

MESSAGE [troll appears]
A burley troll steps out from beneath the bridge and blocks your way.  "You
must give me something of great value or I won't let you cross my bridge.  Pay
up or return from whence you came!", he says grumpily.
END_MESSAGE

MESSAGE [doesn't work here]
A voice booms out, "That word doesn't work here!"
END_MESSAGE

MESSAGE [I'm game]
I'm game.  Would you care to explain how?
END_MESSAGE

MESSAGE [now dark]
It is now pitch dark.  If you proceed you will likely fall into a pit.
END_MESSAGE

MESSAGE [can't be serious]
You can't possibly be serious!
END_MESSAGE

MESSAGE [don't have the resources]
Sorry, but you don't have the necessary resources to $verb$ the
$noun$!
END_MESSAGE

MESSAGE [bird attacks snake]
The little bird attacks the green snake, and in an astounding flurry drives
the snake away.
END_MESSAGE

MESSAGE [have no keys]
You don't have any keys!
END_MESSAGE

MESSAGE [has no lock]
It doesn't have a lock, so it cannot be locked or unlocked!
END_MESSAGE

MESSAGE [already unlocked]
The $noun$ is already unlocked!
END_MESSAGE

MESSAGE [already locked]
The $noun$ is already locked!
END_MESSAGE

MESSAGE [batteries are dead]
Sorry, but your batteries are dead and there is no way to turn on the lamp.
You could be in real trouble!
END_MESSAGE

MESSAGE [lamp now on]
Your lamp is now shining brightly!
END_MESSAGE

MESSAGE [lamp now off]
Your lamp is now off.
END_MESSAGE

MESSAGE [nothing happens]
Nothing happens.
END_MESSAGE

MESSAGE [didn't break]
However, it didn't break.
END_MESSAGE

MESSAGE [attacking snake is dangerous]
Attacking the snake both doesn't work and is very dangerous.
END_MESSAGE

MESSAGE [dwarf dodges]
You attack a little dwarf, but he dodges out of the way.
END_MESSAGE

MESSAGE [with bare hands?]
With what? Your bare hands?
END_MESSAGE

MESSAGE [climb down beanstalk]
Carefully, you climb down the beanstalk to the bottom of the pit -- far below.
END_MESSAGE

MESSAGE [scamper across]
Quickly, you scamper across the bridge -- before the troll returns.
END_MESSAGE

MESSAGE [follow the stream]
I don't know where the cave is, but hereabouts no stream can run on the
surface for very long.  I would try the stream.
END_MESSAGE

MESSAGE [squeeze through tunnel]
You just barely manage to squeeze through the tunnel into the next room.
END_MESSAGE

MESSAGE [I'm confused too]
I'm as confused as you are.
END_MESSAGE

MESSAGE [feet now wet]
Your feet are now wet.
END_MESSAGE

MESSAGE [it was delicious]
Thank you.  It was delicious!
END_MESSAGE

MESSAGE [bottle now empty]
The bottle of water is now empty.
END_MESSAGE

MESSAGE [peculiar - nothing happens]
Peculiar.  You $verb$ the $noun$ for a while, but nothing unexpected
happens.
END_MESSAGE

MESSAGE [bottle empty, ground wet]
Your bottle is empty and the ground is wet.
END_MESSAGE

MESSAGE [where to go]
Please tell me which way to go in order to $verb$ the $noun$.
END_MESSAGE

MESSAGE [batteries appear]
After you insert the coins, the vending machine makes a few belch-like noises
and disgorges a set of brand-new batteries.
END_MESSAGE

MESSAGE [you release bird]
You release the bird from the wicker cage.
END_MESSAGE

MESSAGE [okay, do it yourself]
Okay, If you're so smart, do it yourself!
END_MESSAGE

MESSAGE [$verb$ the $noun$ for a while]
You $verb$ the $noun$ for a while.
END_MESSAGE

MESSAGE [it's already here]
I believe what you want is right here with you.
END_MESSAGE

MESSAGE [use bridge instead]
I respectfully suggest you go across the bridge instead of jumping.
END_MESSAGE

MESSAGE [no way across]
There is no way across the fissure.
END_MESSAGE

MESSAGE [it isn't hungry]
It's not hungry (It's merely pinin' for the Fjords).  Besides You have no bird
seed.
END_MESSAGE

MESSAGE [snake eats bird]
The snake has now devoured your bird.
END_MESSAGE

MESSAGE [it doesn't want food - except you]
There's nothing here it wants to eat (Except perhaps you).
END_MESSAGE

MESSAGE [dwarves eat coal]
You fool, Dwarves eat only coal!  Now you've made him REALLY mad!!!
END_MESSAGE

MESSAGE [nothing to put it in]
You have nothing in which to carry it.
END_MESSAGE

MESSAGE [already full]
Your bottle is already full.
END_MESSAGE

MESSAGE [no liquid here]
There is nothing here with which to fill the bottle.
END_MESSAGE

MESSAGE [bottle now full of water]
Your bottle is now full of water.
END_MESSAGE

MESSAGE [bottle now full of oil]
Your bottle is now full of oil.
END_MESSAGE

MESSAGE [don't be ridiculous]
Don't be ridiculous!
END_MESSAGE

MESSAGE [too rusty to open]
The door is very rusty and refuses to open.
END_MESSAGE

MESSAGE [knife vanishes]
The Dwarf's knife vanished as it struck the wall of the cave.
END_MESSAGE

MESSAGE [something won't fit]
Something you're carrying won't fit through the tunnel with you.  You'd best
take inventory and drop something.
END_MESSAGE

MESSAGE [back where you started]
You have crawled around in some little holes and found your way blocked by a
recent cave-in.  You are now back in the main passage.
END_MESSAGE

MESSAGE [this exit closed]
A mysterious recorded voice groans into life and announces: "This exit is
closed.  Please leave via main office."
END_MESSAGE

MESSAGE [hint costs 5]
The hint will cost you 5 points.
END_MESSAGE

MESSAGE [too far to reach]
It is too far up for you to reach.
END_MESSAGE

MESSAGE [you kill dwarf]
You killed a little Dwarf.  The body vanished in a cloud of greasy black
smoke.
END_MESSAGE

MESSAGE [shell too hard]
The shell is very strong and impervious to attack.
END_MESSAGE

MESSAGE [axe bounces off dragon]
The axe bounces harmlessly off the dragon's thick scales.  The axe lands so
close to the dragon that you can't reach it without being fried to a crisp!
END_MESSAGE

MESSAGE [better not]
The dragon looks rather nasty.  You'd best not try it!
END_MESSAGE

MESSAGE [dragon fries bird]
The little bird attacks the green dragon, and in an astounding flurry gets
burnt to a cinder.  The ashes blow away.
END_MESSAGE

MESSAGE [troll catches axe & throws it back]
The troll deftly catches the axe, examines it carefully, and tosses it back,
declaring, "Good workmanship, but it's not valuable enough.".
END_MESSAGE

MESSAGE [troll refuses]
The troll refuses to let you cross.  "Give me a treasure or return from whence
you came!", he demands.
END_MESSAGE

MESSAGE [no longer any way across]
There is no longer any way across the chasm.
END_MESSAGE

MESSAGE [bridge buckles under bear]
Just as you reach the other side, the bridge buckles beneath the weight of the
bear, which was still following you around.  You scramble desperately for
support, but as the bridge collapses you stumble back and fall into the chasm.
END_MESSAGE

MESSAGE [bear chases troll]
The bear lumbers toward the troll, who lets out a startled shriek and scurries
away.  The bear soon gives up pursuit and wanders back.
END_MESSAGE

MESSAGE [axe misses & lands near bear]
The axe misses and lands near the bear where you can't get at it.
END_MESSAGE

MESSAGE [bear eats food]
The bear eagerly wolfs down your food, after which he seems to calm down
considerably, and even becomes rather friendly.
END_MESSAGE

MESSAGE [want the hint?]
Do you want the hint?
END_MESSAGE

MESSAGE [troll wants treasure]
Gluttony is not one of the Troll's vices.  Avarice, however, is.
END_MESSAGE

MESSAGE [battery hint]
Your lamp is getting dim.. You'd best start wrapping this up, unless you can
find some fresh batteries.  I seem to recall there's a vending machine in the
maze.  Bring some coins with you.
END_MESSAGE

MESSAGE [call it a day]
There's not much point in just wandering around aimlessly, and you can't
explore the cave without a working lamp.  So let's just call it a day.  Better
luck next time!

END_MESSAGE

MESSAGE [pirate hides chest]
As you turn toward the noise, the beam of your lamp falls across a bearded
pirate.  He is carrying a large chest.  "Shiver me timbers!"  he cries, "I've
been spotted!  I'd best hide meself off to the maze and hide me chest!"  With
that, he vanished into the gloom.
END_MESSAGE

MESSAGE [you find yourself ...]
After a few minutes of walking and a little climbing, you find yourself ...
END_MESSAGE

MESSAGE [stream goes through pipe; use exit]
The stream flows out through a pair of 1 foot diameter sewer pipes.  It would
be advisable to use the exit.
END_MESSAGE

MESSAGE [vase drops]
The ming vase drops with a delicate crash.
END_MESSAGE

MESSAGE [programmer takes revenge]
As you reach for the programmer's goodies, an enraged bearded programmer jumps
out from concealment.  "Aha!", he crows, "I've found the SOB (that's
'Subtract-One-and-Branch') that has been stealing my stuff.  Have you
forgotten, my son, that my wizardly spells help to keep this cave ergodic and
reasonably safe for adventurers like you?  Well, no more Mr. Nice Guy!!!"

"First, I'll remove some of the treasure", and with that he keys in the
following COMMAND on his keyboard:  DESTROY(TREASURES);

"Next, I'll revoke some of the magic words", and he keys in the following
COMMAND: REVOKE(MAGIC_WORDS);

"And if you thought the dwarves were tough before, just watch!", as he keys
in: MAKE_NASTIER(dwarves);

"Finally, I'll kick you deep into the maze, you turkey!", as he bangs his
keyboard with the COMMAND:  PLAYER_LOC := DEEP_IN_MAZE;
END_MESSAGE

MESSAGE [magic word fails]
Nothing happens!!!  That is one of the magic words the programmer revoked!  By
the way, do the dwarves seem nastier, the passages more tortuous, the
treasures harder to get?  I'll bet you're sorry you ever incurred the wrath of
the programmer!!
END_MESSAGE

MESSAGE [$NOUN$ is long gone]
Unfortunately, the $noun$ is no where to be seen.
END_MESSAGE

MESSAGE [not a good weapon]
You attempt to $verb$ the $noun$ with the $object$, but you are
unsuccessful.  The $object$ is a fairly poor weapon.  Perhaps you should
consider using an axe, a knife, some dynamite or something equally deadly. 
END_MESSAGE

MESSAGE [NO.KEYHOLE]
The door to the safe has no keyhole, dial, or handle - I can't figure out how
to open it!
END_MESSAGE

MESSAGE [IT.IS.MELTED]
The door to the safe seems to be fused shut - I can't open it.
END_MESSAGE

MESSAGE [SAFE.SHUTS]
>Creeeeeeeeeeeeeeeeeeeeeeeeeeeek<     >ker-CHUNK!<
 
The safe is now closed.
END_MESSAGE

MESSAGE [SAFE.OPENS]
>ker-THUNK<
/            >screeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeech<
 
The (somewhat rusty) safe is now open.
END_MESSAGE

MESSAGE [SAFE.FUSES]
 
>bong<                 The very air quivers with sound as though
/   >bong<               someone, somewhere in the distance, has struck
/      >bong<             three powerful blows on an immense brass gong.
 
Smoke trickles out from around the edges of the safe's door, and the door
itself glows red with heat for a moment.
 
A hollow voice says,  "This is a Class 1 security alarm.  All cave security
forces go to Orange Alert.  I repeat - Orange Alert."

From somewhere in the distance comes an ominous bubbling sound.  OHMYGAWD!!!!

It is Rover (for all you "Prisoner" fans)!
END_MESSAGE
 
MESSAGE [SAFE.BLOCKS]
The safe's door is blocking the exit passage - you'll have to close the safe
to get out of here.
END_MESSAGE

MESSAGE [AGT Info]
This game was created using the "Master's Edition" of the Adventure Game
Toolkit (AGT).  The "Master's Edition" is the long-awaited and long-promised
version 2.0 of AGT and represents the response to over five years of AGT
user's requests for improvements and additional capabilities and features.

The MASTER'S EDITION of ADVENTURE GAME TOOLKIT is designed to allow a game
designer/writer to create and play his/her own high-quality text adventure
games with optional graphic illustrations, sound effects and music.  Once
created, these adventure games can be shared with and enjoyed by others --
even if they do not have a copy of the Adventure Game Toolkit themselves.

FEATURES OF MASTER'S EDITION OF THE ADVENTURE GAME TOOLKIT

The Master's Edition of AGT has a number of features that make it the most
comprehensive text adventure game creation product currently available.  Some
of these key features are:

   *     Default "look-and-feel" of Infocom adventure games with similar
         screen layout and standard vocabulary and routines.

   *     Large standard vocabulary with potential to define many more words
         unique to a specific adventure.  Typical games can have a vocabulary
         of 1000 words or more.

   *     Sophisticated parser that can understand (1) complex input commands
         including pronouns (IT, HIM, HER, THEM, MY and ITS), and (2) compound
         commands separated by AND or THEN or punctuation symbols, and (3)
         commands addressed to characters within the game.  Here are a few
         examples of commands AGT can handle with ease:

             GET THE FLASH LIGHT AND THEN SWITCH IT ON
              PUT ON THE CLOAK, THEN EXAMINE IT; READ ITS LABEL
              PLACE THE GREEN ROCK AND THE SMALL PEBBLE BEHIND THE TREE
              ENTER THE HOUSE; GET ALL; EXIT; SOUTH; SOUTH THEN DOWN
              SULU, SET A COURSE FOR ALPHA 14
              SCOTTY, BEAM DOWN A TRICORDER AND THE QWERTY MODULE
              DROP THE FOOD, THE KEY AND THE BOTTLE THEN UNLOCK THE DOOR WITH
                   THE BRASS KEY AND THEN LEAVE

  *     Function and cursor keys predefined to input frequently used commands
         and move directions.  Function keys may also be redefined to input
         frequently used commands like THROW AXE AT DWARF or GIVE MILK BOTTLE
         TO BABY.

   *     An OOPS feature that allows you to edit/correct your input commands.

   *     SCRIPT and UNSCRIPT commands to echo game output to printer.

   *     Optional graphic illustrations using PCX formatted pictures for
         display on CGA, EGA or VGA screens.  The PCX format is the most
         widely available of any picture format and is supported by most PAINT
         and/or DRAW programs.  Plus -- a great deal of PCX "clip-art" is
         available.

   *     Optional music and sound effects that can be played in the
         "background" during the game.  These sound effects use the PC's
         internal speaker and do not require any special "sound card."

   *     Optional user-definable "look-and-feel" interface including a
         menu-driven player input option that displays feasible commands for
         the player to pick from.

   *     Optional "pop-up" hints available when the <Alt> and <h> keys are
         pressed at the same time.

   *     Optional fonts (EGA and VGA monitors only) that can be changed to
         suit the needs of the game.  The Master's Edition comes with over
         30 sample fonts including Old English, Scrawl, Computereze.  Plus, a
         Font Editor is provided that allows you to create your own unique
         fonts.

   *     Totally "backward" compatible with all previous versions of AGT.

WHAT THE REVIEWERS HAVE SAID ABOUT THE ADVENTURE GAME TOOLKIT

    "Using the Adventure Game Toolkit, anyone with an ounce of
     imagination can create a text adventure game ... similar in layout
     and sophistication to those made by Infocom and other commercial
     developers."

        -- Donald B. Trivette in PC Magazine

     "The Adventure Game Toolkit (AGT) acts as a compiler which allows
     for creating remarkably complex and sophisticated games in a fairly
     simple way .... AGT's parser reminds me of Infocom's."

        -- Scorpia in Computer Gaming World

     "If you have ever wondered what it is like to create your own
     adventure games, but didn't have the programming knowledge to do it,
     this product is for you .... The process is easy ... and you'll have
     hours of fun doing it."

        -- Resul DeMaria in Public Domain Software & Shareware

     "The Adventure Game Toolkit from Softworks ... provides all the
     tools you need to build your own text based adventure games .... The
     Adventure Game Toolkit is an extremely powerful development
     package."

        -- Bob Napp in "Big Blue Disk"

    The Adventure & Strategy Club (of England) selected the Adventure Game
    Toolkit as the Best Utility of 1991/1992.

DIFFERENCES BETWEEN THE NORMAL EDITION AND THE MASTER'S EDITION OF AGT

The "Normal Edition" (i.e., the normal version) of AGT is very simple to use
and can be used by programming novices or even by non-programmer's to create
very professional text adventures similar to those from firms like Infocom.
Versions of the "Normal Edition" are available for IBM, Macintosh, Atari ST
and Amiga computers and games created on any of these computers can be
re-compiled and played on any of the other computers.

The Normal Edition is still supported and available from Softworks as
Shareware for only $20 (or $40 including a 223 page printed manual with lots
and lots of detailed examples).  This price covers the cost of two ZIPped
disks with over 1.5 megabytes of goodies including summary documentation on
disk, and the AGT source code to over a dozen adventure games that may be
studied for ideas or simply played for fun.

The "Master's Edition" contains all the features and capabilities of the
"Normal Edition" plus a whole lot more.  It is available only for IBM (or
compatible) computers.  The Master's Edition is aimed at the more
sophisticated and experienced programmer/game designer.  The Master's Edition
allows you to create games that are approximately twice as large as those
possible using the Normal Edition.  Plus, your games can have optional graphic
illustrations, sound effects, music, "pop-up" hints, unique fonts (EGA or VGA
screens only), and a customizeable "look-and-feel" user interface including a
menu-driven player input option.

The Master's Edition is available from Softworks for only $50.  This price
includes the cost of five ZIPped disks with over 3.5 megabytes of goodies
including complete documentation on disk, a bunch of game creation utilities,
several brand new sample games including the complete AGT source code to
HUMONGOUS CAVE (believed to be the largest text adventure game available on
any microcomputer).  The Master's Edition package also includes the complete
AGT source code to the game you are currently playing with all of its related
font, music, sound effects and pictures files.

Which version is right for you?  If you are a "power" gamer/programmer and
know that you can use (or need) the full power of the Master's Edition, then
by all means -- get the Master's Edition.  If you have less experience with
programming or game design, then you should probably start with the Normal
Edition.  If you select the Normal Edition, you can always upgrade later when
you need the full power of the Master's Edition -- for a special "registered
AGT user" upgrade price of only $35.

To order either the Normal Edition or the Master's Edition, just write or
call:

   Softworks
    43064 Via Moraga
    Mission San Jose, California  94539

    VISA or MasterCard accepted for telephone orders
    (510) 659-0533   6:00 PM to 9:00 PM -- PST only!

To get a printed order form, just enter the COMMAND: PRINT FORM

Softworks is a member of the Association of Shareware Professionals -- your
guarantee of quality in shareware software.

                            ÚÄÄÄÄÄÄÄÄÄ¿
                      ÚÄÄÄÄÄÁÄÄÄ¿     ³              (tm)
                   ÄÄÄ³         ³O    ³ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
                      ³   ÚÄÄÄÄÄÁÐÄÄ¿ ³   Association of
                      ³   ³         ÃÄÙ   Shareware
                      ÀÄÄÄ´    O    ³     Professionals
                   ÄÄÄÄÄÄÄ³    º    ³ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
                          ÀÄÄÄÄÐÄÄÄÄÙ     MEMBER


SECRET WORD #1 -- ABRADE (v) to wear away by friction; to erode.

END_MESSAGE

MESSAGE [Funny Saying -- First]
Time flies like an arrow.  However, fruit flies like bananas.
END_MESSAGE

#COMMENT  Turn off warnings -- this message is not directly referenced
#OPTIONS :-Warnings

MESSAGE [Funny Saying -- secret word]
SECRET WORD #5 -- HARBINGER (n) forerunner.
END_MESSAGE

MESSAGE [Funny Saying #2]
Reality is for people who can't face science fiction.
END_MESSAGE

MESSAGE [Funny Saying #3]
People with narrow minds usually have broad tongues.
END_MESSAGE

MESSAGE [Funny Saying #4]
A penny saved is ridiculous.
END_MESSAGE

MESSAGE [Funny Saying #5]
No problem is so formidable that you can't just run away from it.
END_MESSAGE

MESSAGE [Funny Saying #6]
Schizophrenia beats being alone.
END_MESSAGE

MESSAGE [Funny Saying #7]
Help stamp out and abolish redundancy!
END_MESSAGE

MESSAGE [Funny Saying #8]
While money can't buy happiness, it certainly lets you choose your own form
of misery.
END_MESSAGE

MESSAGE [Funny Saying #9]
Trolls like eggs!
END_MESSAGE

MESSAGE [Funny Saying #10]
Nuke the Whales!
END_MESSAGE

MESSAGE [Funny Saying #11]
More people have died in Teddy Kennedy's car than in nuclear power plants.
END_MESSAGE

MESSAGE [Funny Saying #12]
Remember, the fact that you're paranoid doesn't mean they're NOT out to get
you!
END_MESSAGE

MESSAGE [Funny Saying #13]
I'm all for computer dating, but I wouldn't want one to marry my sister.
END_MESSAGE

MESSAGE [Funny Saying #14]
Eschew Obfuscation!
END_MESSAGE

MESSAGE [Funny Saying #15]
F U CN RD THS U CNT SPL WRTH A DM!
END_MESSAGE

MESSAGE [Funny Saying #16]
God did not create the world in seven days.  He partied for six and then
pulled an all-nighter.
END_MESSAGE

MESSAGE [Funny Saying #17]
Time is just nature's way of keeping everything from happening at once.
END_MESSAGE

MESSAGE [Funny Saying #18]
If rabbits feet are so lucky, what happened to the rabbit?
END_MESSAGE

MESSAGE [Funny Saying #20]
You can fool some of the people all of the time, and all of the people some
of the time, but you can make a fool of yourself anytime.
END_MESSAGE

MESSAGE [Funny Saying #21]
Be alert!  We needs more lerts.
END_MESSAGE

MESSAGE [Funny Saying #22]
A closed mouth gathers no feet.
END_MESSAGE

MESSAGE [Funny Saying #23]
After all is said and done, usually more is said than done.
END_MESSAGE

MESSAGE [Funny Saying #24]
Nothing improves with age.
END_MESSAGE

MESSAGE [Funny Saying #25]
You've got to kiss a lot of ugly frogs before you find your handsome prince
(or princess).
END_MESSAGE

MESSAGE [Funny Saying #26]
Love is the triumph of imagination over intelligence.
END_MESSAGE

MESSAGE [Funny Saying #27]
Abstain from wine, women, and song; mostly song.
END_MESSAGE

MESSAGE [Funny Saying #28]
Beauty is skin deep; ugly goes right to the bone.
END_MESSAGE

#COMMENT Return "Warnings" to its previous state
#OPTIONS =Warnings

MESSAGE [Funny Saying -- Last]
Never stand between a fire hydrant and a dog.
END_MESSAGE

MESSAGE [Middle to South]
After a brief pause for rest, you set off to the south and crawl for a while
longer.
END_MESSAGE

MESSAGE [North to Middle]
You crawl south along the duct for about an hour -- at least, it seems like an
hour.
END_MESSAGE

MESSAGE [Middle to North]
After a brief pause for rest, you set off to the north and crawl for a while
longer.
END_MESSAGE

MESSAGE [You crawl north into duct]
You crawl into the duct and continue to crawl north for a very long time.  The
cold, cold wind blows through the duct from the cavern to your south.
END_MESSAGE

MESSAGE [You climb the stairs]
You climb up the stairs and enter the room above through the open safe door.
END_MESSAGE

MESSAGE [You can't climb the stairs]
You climb up the stairs.  At the top of the stairs, your progress is halted by
a steel door that has no handle and no lock.  You try to push it open, but it
is locked on the other side.  Finally, you give up and descend again to the
room below.
END_MESSAGE

MESSAGE [You must use access card]
Sorry, but you must insert the access card in the slot for admittance.
END_MESSAGE

MESSAGE [It has an ornate gold lock]
The drawer is in the center of the desk.  It has an ornate gold lock.
END_MESSAGE

MESSAGE [Perhaps, you can find a sun dial somewhere.]
Unfortunately, there is nothing here that gives the time.  Perhaps, you can
find a sun dial somewhere.
END_MESSAGE

MESSAGE [The time is ... AM  M120]
The time is currently #VAR[hours]#:#VAR[minutes]# A.M.
END_MESSAGE

MESSAGE [The time is ... PM  M121]
The time is currently #VAR[hours]#:#VAR[minutes]# P.M.
END_MESSAGE
 
MESSAGE [The time is ... AM  M122]
The time is currently #VAR[hours]#:0#VAR[minutes]# A.M.
END_MESSAGE

MESSAGE [The time is ... PM  M123]
The time is currently #VAR[hours]#:0#VAR[minutes]# P.M.
END_MESSAGE


